Tetris
Colin Fahey
1. البرامج
2. مقدمة
هذه المقاله كيفية الحاسوب الذي يمكن ان تضطلع به الكلاسيكي لعبة فيديو tetris عن طريق الحصول على معلومات عن المجلس ، وتحديد الاجراءات الجيدة ، ويؤدون تلك الاعمال.
هذه المادة تتضمن البرمجيات tetris قادر على اللعب في الوقت الحقيقي.
وتشمل البرامج افضل في الوقت الحقيقي tetris - خوارزميه اللعب في المجال العام.
هذه المادة يحدد القواعد "الموحدة لtetris" ، على أساس المواصفات الاصليه 1986 التجارية التمهيدية نسخة من tetris لاجهزة الكمبيوتر الشخصيه (PC).
في 2003 ، البرامج المدرجه في هذه المادة كانت تستخدم لتمكين كمبيوتر لتقوم به tetris مستقل يعمل على الكمبيوتر.
USB عادية وكاميرا فيديو كانت تستخدم لتمكين جهاز الكمبيوتر "انظر" الى شاشة جهاز الكمبيوتر الآخر.
أ تقوية المجلس وتمت السيطرة على طريق RS-232 واجهة لتمكين "مفاتيح" الحاسوب الى "الصحافة" على لوحة المفاتيح للكمبيوتر اخر.
ومن ثم ، فان اول جهاز كمبيوتر العلاقة الثانية الى جهاز الكمبيوتر الذي يقوم نموذجية مماثلة لعلاقة الانسان لاعب الى الكومبيوتر عندما لعب tetris ؛ اللعبة هي الدولة الوحيدة المعروفة من خلال النظر الى الشاشه ، واتخاذ اجراءات لاعب لا يمكن الا ان يكون بدأ من خلال لوحة المفاتيح .
في الاعداد لهذه التظاهره ان الحاسوب الذي يمكن ان تضطلع به tetris أفضل من الانسان ، في اطار العادي في الوقت الحقيقي tetris ظروف اللعب.
3. تاريخ tetris
في 1985 ، Alexey Pajitnov وكانت Dmitry Pavlovsky الحاسوب المهندسين في Computing Center of the Russian Academy of Sciences.

Dorodnicyn Computing Centre من Russian Academy of Sciences
Alexey وDmitry كانت مهتمة بتطوير وبيع العاب الكمبيوتر تسبب الادمان.
انها اختبار عدة العاب مختلفة.
Alexey مستوحاة من اليونانيه القديمة لعبة اللغز ، Pentaminos ، الذي ينطوي على لغز ترتيب القطع المصنوعه من خمس ساحات.
Alexey فكر فكره Pentamino ترتيب القطع لأنها سقطت في كأس لمستطيل ، لكنه يدرك ان اثني عشر مختلفة على مساحة خمسة أشكال معقدة للغاية وكانت لعبة فيديو.
Alexey تحولت الى استخدام سبع قطع "tetramino" ، ادلى كل من اربعة مربعات.
في 1985.6 ، Alexey Pajitnov المبرمجه النسخه الاولى من tetris على Electronica 60.

Dmitry Pavlovsky ، Alexey Pajitnov ، وtetris.
في 1985-1986 ، Vadim Gerasimov ، 16 عاما من العمر المدارس الثانويه الحاسوب الاعجوبه من عمل في الاكاديميه ، نفذت tetris لIBM PC ادارة MS-DOS نظام التشغيل.
(في وقت لاحق لم Vadim Gerasimov البحث في MIT Media Laboratory ، في الفترة من عام 1994 حتى عام 2003 ، تلقى على درجة الدكتوراه بعد استكمال العديد من المشاريع :
http://vadim.www.media.mit.edu)

عرض الشاشه من 1987-1988 التجارية التمهيدية لاطلاق سراح tetris لPC

اللعبة تقوم به من الشاشه 1987-1988 التجارية التمهيدية لاطلاق سراح tetris لPC
بعد 1987 ، tetris تنتشر في انحاء الكرة الارضيه.
The Tetris Company, LLC ، تمتلك tetris العلامات التجارية.
4. مشاريع مستوحاة من tetris
4.1 0 الابعاد tetris
لم تضع بعد.
4.2 1 - الابعاد tetris
Ziga Hajdukovic وقد وضعت 1 - الابعاد tetris البرمجيات التي يمكن ان تقوم في متصفح الانترنت.
Ziga Hajdukovic كما وضعت 1 - الابعاد tetris برامج للهواتف الجواله باستخدام Java J2ME المنهاج.
4.3 2 - الابعاد tetris
Tetris جميع الخيارات التقليديه في هذه الفئة.
ويشمل هذا الفرع للاهتمام المختلفة.
4.3.1 لعبة tetris أكبر من أي وقت مضى : Delft University of Technology (1995)

Tetris لعب على بناء ؛ 2000 m^2 مساحة ؛ Delft University of Technology (1995)

Tetris لعب على بناء ؛ 2000 m^2 مساحة ؛ Delft University of Technology (1995)
4.3.2 آخر tetris المباراة بناء على : Brown University (2000)

لعبة tetris عرض باستخدام الاضواء على نوافذ مبنى في Brown University (2000.4-200.5) http://bastilleweb.techhouse.org
"اعتقد انه كان فقط لا تصدق معظم لمدة يوم واحد يمكن ان يتصور شيئا وأنا في حياتي. مثل ستيف الوظائف قلنا دائما ، الرحله هي المكافاه."
"انه جعلني افكر في العودة المشاريع فعلنا في الكليه. من الاشياء التي تكاد تكون غير ممكن ان شعب آخر لن نفكر به."
Steve Wozniak (2000)
4.3.3 متصفح الانترنت مع لعبة "بناء" صورة MIT "الاخضر"

Vadim Gerisimov's متصفح الانترنت tetris
متصفح الانترنت tetris هذا الخيار من وضع Vadim Gerasimov.
هذا متصفح الانترنت tetris السمات "Green" بناء في حرم MIT.
Tetris هذا الخيار فقط ما لا يقل عن تسعة أعمدة بدلا من مستوى عشرة أعمدة.
Tetris هذا الخيار يعرض قطعة جديدة مع التوجهات العشواءيه.
Vadim Gerasimov من هو الشخص الذي كتب الكمبيوتر مدونة لPC نسخة من tetris في 1986.
Vadim Gerasimov لم دكتوراه البحث في MIT Media Laboratory خلال 1994-2003 ، والعمل على العديد من المشاريع.
4.3.4 PIC16F84 12 MHz متحكم دقيق على اساس NTSC / PAL فيديو لعبة tetris

PIC16F84 12 MHz متحكم دقيق على اساس NTSC / PAL فيديو لعبة tetris
الصورة اعلاه يبين NTSC / PAL اخراج الفيديو التي ينتجها PIC16F84 12 MHz متحكم دقيق تشغيل البرمجيات التي كتبها Rickard Gunee في 1998.
اشارة الفيديو التي تولدها البرمجيات مراقبة النواتج الرقميه.
4.3.5 "Scopetris" راسم اشارة tetris من قبل Lars Pontoppidan (2007.8)

"Scopetris" راسم اشارة tetris من قبل Lars Pontoppidan (2007.8)
Lars Pontoppidan كتب مدونة لAtMega32 متحكم دقيق ، واضاف الدوائر التناظريه بسيطة ، لايجاد صيغة tetris الذي يمكن ان تقوم على رأسم اشارة.
بعض السجلات AtMega32 متحكم دقيق للمراقبة 8 بت الناتج اشارات ، وعندما مرت من خلال "R-2R" الدائرة الكهرباءيه مقاوم للالرقميه الى التناظريه التحويل (D/A) ، مما ادى الي اشارات تناظريه يمكن السيطرة على (x,y) بتنسيق من الحزم راسم اشارة (عندما يكون هو راسم اشارة مجموعة "لطريقة X-Y)."
YouTube الفيديو :
FLV الفيديو :
4.3.6 Obfuscated قانون tetris : C / Unix
حصل على جائزة التالية "1989 IOCCC Best Game".
long h[4];t(){h[3]-=h[3]/3000;setitimer(0,h,0);}c,d,l,v[]={(int)t,0,2},w,s,I,K
=0,i=276,j,k,q[276],Q[276],*n=q,*m,x=17,f[]={7,-13,-12,1,8,-11,-12,-1,9,-1,1,
12,3,-13,-12,-1,12,-1,11,1,15,-1,13,1,18,-1,1,2,0,-12,-1,11,1,-12,1,13,10,-12,
1,12,11,-12,-1,1,2,-12,-1,12,13,-12,12,13,14,-11,-1,1,4,-13,-12,12,16,-11,-12,
12,17,-13,1,-1,5,-12,12,11,6,-12,12,24};u(){for(i=11;++i<264;)if((k=q[i])-Q[i]
){Q[i]=k;if(i-++I||i%12<1)printf("\033[%d;%dH",(I=i)/12,i%12*2+28);printf(
"\033[%dm "+(K-k?0:5),k);K=k;}Q[263]=c=getchar();}G(b){for(i=4;i--;)if(q[i?b+
n[i]:b])return 0;return 1;}g(b){for(i=4;i--;q[i?x+n[i]:x]=b);}main(C,V,a)char*
*V,*a;{h[3]=1000000/(l=C>1?atoi(V[1]):2);for(a=C>2?V[2]:"jkl pq";i;i--)*n++=i<
25||i%12<2?7:0;srand(getpid());system("stty cbreak -echo stop u");sigvec(14,v,
0);t();puts("\033[H\033[J");for(n=f+rand()%7*4;;g(7),u(),g(0)){if(c<0){if(G(x+
12))x+=12;else{g(7);++w;for(j=0;j<252;j=12*(j/12+1))for(;q[++j];)if(j%12==10){
for(;j%12;q[j--]=0);u();for(;--j;q[j+12]=q[j]);u();}n=f+rand()%7*4;G(x=17)||(c
=a[5]);}}if(c==*a)G(--x)||++x;if(c==a[1])n=f+4**(m=n),G(x)||(n=m);if(c==a[2])G
(++x)||--x;if(c==a[3])for(;G(x+12);++w)x+=12;if(c==a[4]||c==a[5]){s=sigblock(
8192);printf("\033[H\033[J\033[0m%d\n",w);if(c==a[5])break;for(j=264;j--;Q[j]=
0);while(getchar()-a[4]);puts("\033[H\033[J\033[7m");sigsetmask(s);}}d=popen(
"stty -cbreak echo stop \023;sort -mnr -o HI - HI;cat HI","w");fprintf(d,
"%4d from level %1d by %s\n",w,l,getlogin());pclose(d);}
4.3.7 Obfuscated قانون tetris : قانون Perl
فيما يلى tetris لPerl مترجم : Perltris (النسخه 20050717) Sean Adams.
#!/usr/bin/perl
$_='A=15; B=30; select(stdin); $|=1; select(stdout);$|=1; system
"stty -echo -icanon eol \001"; for C(split(/\s/,"010.010.010.010
77.77 022.020.020 330.030.030 440.044.000 055.550.000 666.060.".
"000")){D=0;for E(split(/\./,C)){F=0;for G(split("",E)){C[P][F++
][D]=G} D++}J[P]=F; I[P++] =D}%L=split(/ /,"m _".chr(72)." c 2".
chr(74)." a _m");sub a{for K(split(/ /,shift)){(K,L)=split(/=/,K
);K=L{K};K=~s/_/L/; printf "%c[K",27}}sub u{a("a=40");for D(0..B
-1){for F(0..A-1){M=G[F][D];if(R[F][D]!=M) {R[F][D]=M;a("m"."=".
(5+D).";".(F*2+5)); a("a=".(40+M).";" .(30+M));print " "x2}}}a(
"m=0;0 a=37;40")}sub r{(N)=@_;while(N--) {Q=W;W=O=H;H=Q;for F( 0
..Q-1){for D(0..O-1) {Q[F][D]=K[F][D]}}for F(0..O-1){for D(0..Q-
1){K[F][D]= Q[Q-D-1][F]}}}}sub l{for F(0..W-1){for D(0..H-1){(K[
F][D]&& ((G[X+F][Y+D])|| (X+F<0)||(X+F>=A)|| (Y+D>=B)))&& return
0}}1}sub p{for F(0..W-1){for D(0..H-1){(K[F][D]>0)&&(G[X+F][Y+D]
=K[F][D]) }}1}sub o{for F(0..W-1){for D(0..H-1){(K[F][D]>0)&&(G[
X+F][ Y+D]=0)}}}sub n{C=int(rand(P)) ;W=J[C];H=I[C];X=int(A/2)-1
;Y=0;for F(0..W-1){for D(0..H-1){K[F][D]= C[C][F][D]}}r(int(rand
(4)));l&&p}sub c{d:for(D=B;D>=0;D--){for F(0..A-1){G[F][D]||next
d}for(D2=D;D2>=0; D2--){for F(0..A-1){G[F][D2]= (D2>1)?G[F][D2-1
]:0; }}u;}}a ("m=0;0 a=0;37;40 c");print "\n\n".4x" "." "x(A-4).
"perltris\n".(" "x4)."--"xA."\n".((" "x3)."|"." "x(A*2)."|\n")xB
.(" "x4). "--"xA."\n";n;for(;;) {u;R=chr(1); (S,T)=select(R,U,V,
0.01);if(S) {Z=getc;}else {if($e++>20){Z=" ";$e=0;}else{next;} }
if(Z eq "k"){o;r(1);l||r(3);p}; if(Z eq "j"){o;X--;l||X++;p}; if
(Z eq "l"){o;X++;l||X--;p};if(Z eq " "){o;Y++;(E=l)||Y--;p;E|| c
|c|c|c|c|n||goto g;};if(Z eq "q"){last;}}g: a("a=0 m=".(B+8).";0
" ); system "stty sane"; '; s/([A-Z])/\$$1/g; s/\%\$/\%/g; eval;
4.3.8 Mozilla SVG tetris
Scalable Vector Graphics (SVG) هو معيار لوصف الاشياء الرسوميه باستخدام XML.

Mozilla SVG tetris : tetris نفذت باستخدام وصف Scalable Vector Graphics (SVG)
4.3.9 Google "widget" tetris
Google ، Yahoo! ، وMicrosoft ، وغيرها من الشركات ، قد عززت مصغره من البرامج القائمة على شبكة الانترنت اسمه "widgets" التي عادة ما تتسم به من ديناميه استخدام بعض البيانات المتاحة على شبكة الانترنت.
وأحد هذه widget المتاحة من خلال Google هي لعبة tetris.
المثال التالي هو لطيف ، ولكن الإشكال في تدوير مزعج طرق :

Google "widget" tetris
Google widgets اخرى :
4.3.10 MIT ورقة بحث : "Tetris is Hard, Even to Approximate" (2002)
البحوث التالية وتتضمن هذه الوثيقة يدل على ان نوع معين من tetris البديل هو "NP - كاملة."
Erik D. Demaine ، Susan Hohenberger ، وDavid Liben-Nowell ، "Tetris is Hard, Even to Approximate" ، Technical Report MIT-LCS-TR-865 ، Massachusetts Institute of Technology ، 2002.10.21.
"- NP الكامل" هو التصنيف من حيث التكلفه والوقت الفضاء تكلفة خوارزميه.
وتشمل تصنيفات اخرى "P" و"NP".
أ "-" تصنيف "NP الكامل" يعني ، بالنسبة للبعض المشاكل اكبر من الحجم الصغير ، فإن من غير المحتمل ان خوارزميه لايجاد الحل المنشود في العملية قدر كبير من الوقت او المكان.
4.3.11 البحث الوثيقة : "Applying reinforcement learning to Tetris"
الورقه التالية ، نشرت 2005.5.30 ، Donald Carr في علوم الحاسوب في إدارة Rhodes University ، جنوب افريقيا ، ويعرض تطبيق tetris "لتعزيز التعلم."
4.3.12 Tetris تنورة (2007.11)

Tetris تنورة (2007.11)
وقد تم انشاء tetris تنورة من قبل "Lucy" ("hissyfitoly" على etsy.com) قبل 2007.11.
من وصف الخالق للتنورة (التي عرضت للبيع على etsy.com) :
"Okay, so I was a secret, closet Tetris fanatic from about, oh, 1993 to 1996. It was a bitter-sweet obsession. My life wasn't so great, but I could control the stacking of a few measly blocks, [damn it]! Or could I? Video games have been coming back to haunt my dreams as of late, and I find myself stacking blocks, jumping away from a frighteningly-large Q*Bert, and slipping off of logs next to a pixellated frog. This skirt is the result of those nightmares."
المنتدى تعليقات حول هذا تنورة :
"الرجل الذي تنورة المصات في tetris"
"Ahahahaha ، واعتقد نفس الشيء."
"هناك خط كامل لأسفل في أسفل... اكملت الخطوط تختفي." "هل مر" "."
"وينبغي ان يكون هناك بقعة في الظهر او عند الجبهة طويل قطعه من شأنه ان تناسب تماما..."
"وذلك امر قبيح حقا وإن كانت تنورة. بلدي الصديق لا يمكن لي ان شراء الشوكولاته والزهور بما فيه الكفايه لاقناع لي ارتداء هذا الشيء."
4.3.13 Tetris مرحلة قانون (2007.4)

Tetris مرحلة قانون (2007.4)
"من تلك التي جلبت لكم Triforce في 2006... ويأتي الجيل القادم من وجوه غير متحرك القصة الفكاهيه... Tetris."
محليا - فيديو مخباه في Flash الفيديو (FLV) الشكل (تقوم به استخدام VLC) :
4.3.14 فرحان tetris الاختلافات على عرض التلفزيون اليابانيه

Tetris الاختلافات على عرض التلفزيون اليابانيه
شريط الفيديو هذا الجزء من عرض التلفزيون اليابانيه يشمل فرحان tetris من الاختلافات ، بما في ذلك :
قطعة أن تتلاشى عند هبوطها ، التي تملأ قطعة كاملة على التوالي) ومن ثم استكمال عند هبوطها على التوالي) ، التي تقع في قطع متعددة في وقت واحد ، وبصورة غير منتظمة على شكل قطعة ، قطعة طويلة ان قليلا جدا على نطاق واسع لصالح وجود فجوه في (أ) 4 - منع على التوالي انجاز!) ، Mario الى اصابة الفطر وتصبح ضخمة والموت! ، قطعة صغيرة من الحطام المتبقي بعد الصفوف تدمر ، الصاعد خطورة جعل قطعة تطفو الى الاعلى ، الخ.
محليا - فيديو مخباه في Flash الفيديو (FLV) الشكل (تقوم به استخدام VLC) :
4.3.15 "The Original Human TETRIS Performance by Guillaume Reymond" (2007.11)

"The Original Human TETRIS Performance by Guillaume Reymond" (2007.11)
من الوصف على YouTube :
"TETRIS الحقيقي الذي تضطلع به الكائنات البشريه - الجلوس في قاعة :"
TETRIS هي الرابعة من اداء الفيديو GAME OVER Project ، من اخراج الفنان السويسري Guillaume REYMOND (NOTsoNOISY الابداعيه وكالة).
هذا الاقتراح فيديو - وقف لاطلاق النار ولعب ل"LES URBAINES" مهرجان
http://www.urbaines.ch في قصر rumine (لوزان ، سويسرا) على November 24th 2007.
محليا - فيديو مخباه في Flash الفيديو (FLV) الشكل (تقوم به استخدام VLC) :
4.3.16 2.5 الابعاد tetris
مصطلح "2.5 الابعاد" المستخدم هنا على انها تعني غير متعامد نظرا للثنائي الابعاد النسخه tetris ، مع بعض السمك في البعد الثالث.
(ايجاد الصلة "tetris3d" في "F7: GAMES".)
4.4 3 - الابعاد tetris

النسخه Linux / GTK
Tetris ثلاثية الابعاد في اي شكل من اشكال Java بريمج لمتصفحات الانترنت :
Tetris ثلاثية الابعاد لWindows نظام التشغيل :
4.5 4 - الابعاد tetris

Greg Kaiser's "hypertetris" (1996) : 4 - الابعاد tetris
في [1996], [...] ، Greg Kaiser يجمع رباعية الابعاد البديل عن لعبة كلاسيكيه.
استخدام IrisGL (a.k.a. igl) خلق عمل ، اذا كان من الصعب ان تقوم به ، لعبة استخدام الفرعية الاربعة لتصوير مختلف شاشات ثلاثية الابعاد والجوانب بأسره - لعبة الفضاء.
[لأنه] ليس هناك بسهولة [مفهومة] طريقة لاستخلاص أربعة الاجسام د - على اثنين - د الشاشه الفرعية الاربعة وجهات النظر هي الطريقة العملية للمضاربة على تصور وتناوب وترجمة القطع من خلال الابعاد الاربعة) في لعبة تسمى x,y,z,w).
بدلا من استكمال خطوط القطع كما في الاصل ، فان الهدف في هذه الحاله هو لملء كامل مكعب في x,y,z subview (عادة 4 4 وعليها 4).
Subviews الاخرى التي تحتوي على البعد "w" يتم ترتيب تقصير 4 4 أو 10 في الترتيب مع كتلة "w" يجري الطويل ، "vertical" البعد في كل الحالات الثلاث ، مع (x,y), (x,z), (y,z) من اسس مختلفة.
خطورة الافعال في "-w" الاتجاه ، حتى "تسقط" قطعة في ثلاثة subviews الطويلة التي تشمل "w" ، ولا تتحرك ما لم يكن اللاعب السيطرة في الماضي (x,y,z) subview.
يأخذ awhile لتعتاد على ، على اقل تقدير.
اذا كانت المعجزه من قبل بعض من الصبر او تغيير معالم اللعبة ، فالواحد اكمال مكعب ، وسوف تختفي كما تفعل في انجاز خطوط tetris الأصلي ، على الرغم من عدم تسجيل ويحتفظ في HyperTetris.
Benjamin Bernard (2000)
4.6 N الابعاد tetris

Polytope Tetris (2003) : N الابعاد لعبة tetris البديل
Polytope Tetris هو n - tetris بشكل بعدي.
مستوحاة من برنامج HyperTetris ، Polytope Tetris يسمح لك ألف طن تقوم به في اي tetris عدد البعد.
Tetris تقوم به في 3D ، 4D ، 5D ، او اكثر.
HyperTetris هو اسم catchier بكثير من Polytope (def) tetris ، لكنني لا استطيع ان سرقة الاسم.
5. المواصفات "القياسيه tetris"
5.1 مقدمة
تعريف "معيار tetris" هو نموذج مثالي من اهم الخصائص والسلوكيات IBM-PC الاولى من تنفيذ برنامج لعبة tetris (حوالى 1986-1988).
فان نموذج مثالي يقوم على استنتاج واضح من نوايا واضعى IBM-PC الاولى من تنفيذ لعبة tetris.
فعلى سبيل المثال ، فإنه يبدو من المعقول ان يستنتج ان واضعي IBM-PC الاولى من تنفيذ لعبة tetris يقصد لاختيار شكل كل قطعة جديدة تندرج "بشكل عشوائي" ، وعلى ان استخدام Borland C للتنفيذ من rand() لا يعدو كونه وظيفة عملية للتقريب نية.
تعريف "معيار tetris" ان يحدد شكل كل قطعة جديدة تندرج في ان تكون مختارة "عشوائيا."
هذا المثل الأعلى السلوك لا يمكن ان يتحقق من جانب اي تنفيذ ، والتنفيذ ولكن يمكن الاقتراب من السلوك المثالي.
وبالرغم من عدم تنفيذ يمكن ان تنفذ تماما تعريف "tetris القياسيه" ، مثل "معيار tetris" تنطوي على خصائص موضوعية ، ويمكن مقارنة التطبيقات وفقا لقربها النسبي الى "مستوى" المثل العليا "للtetris."
يصف هذا الفرع مجموعة من العناصر ، والسلوكيات ، والقواعد ، التي ، مجتمعة ، وتحديد "مستوى tetris."
5.2 مستوى المجلس tetris
ويعرب المجلس عن شبكة من الخلايا ، وقد الاعمده 10 ، و 20 في الصفوف ، لمجموعة من الخلايا 10 * 20 = 200.

مستوى tetris المجلس (10 الاعمده ، الصفوف 20)
كل خلية يمكن ان تكون اما غير الماهوله (فارغه) أو الأراضي (بالكامل).
5.3 معيار قطعة tetris
وهناك سبع قطع (7) القياسيه tetris ، وفيما يلى اسماء الرسالة :
{ O, I, S, Z, L, J, T }
الرسالة اسماء مستوحاة من اشكال القطع.

السبع القياسيه tetris قطعة "والتوجهات"
النقطه في (0,0) يتزامن مع موقف المجلس (6,20) عندما القطعه الاولى يبدو.
ويبين العمود الاول "التوجهات" الاولية.
في ما يلي ، فان كلمة "التوجه" يستخدم لوصف أي دولة من قطعة ، ضمن مجموعة من يسمح للدول ، التي يمكن ان تنتج عن الحدث بعكس عقرب الساعة التناوب.
تغيير "التوجه" من "توجه" محدد من "I" ، "S" ، أو "قطعة Z" ، يتطلب مزيجا من التناوب والترجمة.
ولذلك ، فان استخدام كلمة "التوجه" الى هنا يعني شيئا اكثر من التناوب وحدها.
ومع ذلك ، يمكن ان تتغير الا "التوجه" وردا على الحدث بعكس عقرب الساعة التناوب ، ودورة متميزه "لتوجهات" كل قطعة يقترب ، او المباريات ، مما ادى الى دورة من دورات نقيه.
الخاصة باستخدام كلمة "توجه" في هذا السياق هو ما يعادل تقريبا لمعنى كلمة أو "زاويه دوران" ، ولكن "التوجه" هو عبارة تستخدم بدلا من "التناوب" لمحاولة للفت الانتباه الى حقيقة ان بعض القطع يتطلب ما هو اكثر من التناوب لانتاج مجموعة من يسمح للدول الناشءه عن الاحداث بعكس عقرب الساعة "التناوب."
لا يمكن الا ان قطع تبديل التوجهات (او الخضوع محددة افقيا أو رأسيا الترجمة (اذا كان للدولة مما ادى الى قطعة لن يكون له اي الاراضي (بالكامل) خلايا من خارج المنطقة والمجلس لن يكون له اي الخلايا التي تداخل الاراضي المحتلة حاليا اي خلايا للمجلس.
(في هذه القاعده ، والأراضي (بالكامل) قطعة من خلايا لا تعتبر "حاليا" جزءا من "الاراضي خلايا للمجلس"
في التعليقات التالية ، اي اشارة الى ونتيجة للبعكس عقرب الساعة التناوب الحدث مع افتراض ان هذا التناوب يمكن فعلا ان يكون أداؤها ، بالنظر الى الأوضاع القائمة من قطعة والمجلس.
وقد "O" (المربع) قطعة واحدة فقط التوجه ، ولا يغير من مواقع اي من الاراضي (بالكامل) في خلايا ردا على أي حال بعكس عقرب الساعة التناوب.
وقد "I" (الخط) قطعة اثنين من التوجهات المحتملة ، والتي تظهر في البداية افقي التوجه.
وقد "I" قطعة المناوبين بين البلدين استجابة لتوجهات بعكس عقرب الساعة التناوب الاحداث المتعاقبه.
وقد "S" و"Z" قد قطع كل اثنين التوجهات الممكنة.
كل هذه القطع البديله في التوجهات بين اثنين وردا على الاحداث المتتاليه بعكس عقرب الساعة التناوب.
وقد "L" ، "J" ، وقطع كل "T" أربعة توجهات ممكنة ، وهذه التوجهات هي نتائج بسيطة عن مركز تناوب على نقاط الاشكال.
قطعة الاولى عندما يظهر على المجلس ، وقد القطعه "الرئيسية" في "محور" افقي التوجه ، وهذه القطعه هي على رأس المجلس.
ولذلك ، لا قطعة في البداية قادرة على تغيير التوجهات لهم. القطعه يجب ان ينحدر به الى صف واحد لديهم امكانيه الحصول على تغيير توجهاتها.
مرة واحدة قد سقطت قطعة من جانب صف واحد على المجلس ، كل قطعه وتوجهات لا يمكن أن تتحقق (على افتراض القطعه ليست قريبة جدا من جانب الجدران او الى كومة من القطع الحالية).
5.4 الموحدة لسير Tetris
فيما يلى مخطط لتقارب مستوى Tetris اللعبة.

مخطط تقريبي لمستوى اللعبة Tetris

مخطط تقريبي لمستوى اللعبة Tetris
5.5 قطعة انشاء معيار Tetris
الرسم البياني التالي يبين (4 * 2 خلية خلية) عن مجلس المنطقة حيث يبدو ان جميع القطع عند انشائها.

قطعة المنطقة حيث يبدو عندما انشئت في مستوى Tetris
وعندما يبدو ان اول قطعة جديدة على المجلس ، ومنشأها ويتزامن مع نقطة على هذا الرسم البياني ، وستكون هذه القطعه تماما الواردة من المنطقة المظلله على هذا الرسم البياني.
عندما بدأت لعبة جديدة هي ، كاملة الحرة تأخير سقوط ينقضي ، وعلي الحرة الاولى - تكرار سقوط قطعة هي ولدت على رأس المجلس.
وخلال اللعب العادي ، عندما محددة الحرة "الاراضي" تكرار سقوط قطعة ، حرة كاملة تقع على التأخير وينقضي المقبلة الحرة تكرار سقوط قطعة هي ولدت على رأس المجلس.
عندما ولدت هي قطعة ، قطعة من نوع اختيار خوارزميه المصطلحات التالية :
pieceIndex = 1 + (randomInteger % 7); // 1..7
لأن هناك دائما فرصة للp (= 1/7) اختيار نوعية محددة من قطعة ، وجميع القطع من نفس النوع من المباشره ، واحتمال وجود قطع k بالضبط من نوع محدد بعد محاكمات n أ ثنائية التوزيع التالى :
P(k) = (1-p)^(n-k) * p^k * ( n! / ( (n-k)! k! ) );
p = 0.0 ... 1.0;
k = 0, 1, 2, ..., n;
mean = ( n * p )
variance = ( n * p *(1-p) )
standard deviation = sqrt( variance )
ونحن عندما تختار من بين 7 (سبعة) في القطع العشوائي ، واحتماليه الحصول على قطعة محددة هي p=(1/7).
واذا فعلنا هذا n=70 مرات ، على سبيل المثال ، فإن احتماليه الحصول على قطعة k بالضبط (مع k في مرمى 0 الى n) هو الذي توليه ثنائية التوزيع ، كما هو مبين في الصورة التالية.

ثنائية لتوزيع n=70 ، p=(1/7)
وهكذا ، يمكن للمرء ان يتنبأ متوسط اجمالي قطعة من نوع واحد وبالنظر الى العدد الاجمالي للقطع عشوائي ، ويمكن للمرء ان يتوقع ايضا احتساب الفرق والانحراف المعياري (الجذر مربع من الفرق) :
p = (1/7):
total random standard
pieces (n) mean variance deviation
============ ======= ======== =========
70 10 8 3
700 100 85 9
7000 1000 857 29
70000 10000 8571 93
عندما نقوم بتحويل قيمة عشواءيه لقطعة الرقم القياسي ، ونحن نفسر على النحو التالي :
value piece
===== =====
1 "O"
2 "I"
3 "S"
4 "Z"
5 "L"
6 "J"
7 "T"
[ما قبل التجارية MS-DOS نسخة من Tetris تستخدم عشوائيا وظيفة عدد Borland Pascal التي يقدمها المجمع.
ان وظيفة استخدم 32 بت الدولة المتغير.
ولذلك ، فان سلسلة من الارقام العشواءيه يقتصر على القيم 2^32 متميزه.
ولذلك ، من حيث المبدأ ، يمكن ان يكتشف لاعبا ، وربما بعد اسقاط 10 قطعة ، على وجه الدقه مكان فى مجموعة من الارقام المقابلة ل2^32 للحالة الراهنة للعبة.
اذا Tetris المحاكاه تتم مع تسلسل محدد من القطع 2^32 ، ثم الأمثل ويمكن الاطلاع على قرارات لكل مكان في تسلسل.
(يبدو ان هناك فرصا كافية ليجري المجلس الى مجلس الدولة فارغه تماما ، مما يسمح لنا للحصول على تزامنت مع precomputed الحل الامثل الطريق.)
خطر العشواءيه البسيطة باستخدام عدد المولدات في محاكاه يقصد بها لايجاد الحل الامثل لمشكلة هو ان يكون الحل الامثل الوحيد للطريق ولا سيما من خلال المشكلة الفضاء الذي اختاره العشواءيه البسيطة عدد المولدات. [
5.6 الضوابط الموحدة tetris
أثناء اللعب ، والمدخلات التالية متاحة :
left : request to translate left by one column
right : request to translate right by one column
rotate : request to do a counterclockwise rotation
drop : request to instantly drop the piece
جميع المدخلات ويسري مفعول ارتفاع الحافه من الاسهامات الايجابية (على الزر الصحافة ، في مقابل الافراج عن زر).
وعندما يحدث زر الصحافة ، وهذه التهم كما طلب.
عقد الزر اسفل بعد فترة معينة من الزمن قد يؤدي الى "تكرار السيارات" الميزه من لوحة المفاتيح ، وتوليد ضغوط جديدة على زر -- ولكن هذه الميزه الخارجية لمحرك اللعبة.
المساهمات المحددة اعلاه مطابقه لعبة tetris الاصل.
تدوير الطلبات التي يمكن تشغيلها اذا لم يكن هناك اي تداخل بين المرغوب فيه والتوجيه ومجموعة الخلايا على المجلس الحالية (باستثناء التى تقع قطعة) ، وإذا كان التوجه المنشود ليس له مجموعة خلايا من خارج المجلس المجال.
ترجمة الطلبات التي يمكن تشغيلها اذا لم يكن هناك اي تداخل بين المرغوب ترجمتها واعداد مجموعة الخلايا على المجلس الحالية (باستثناء التى تقع قطعة) ، واذا كان المطلوب ترجمتها تشكيل مجموعة خلايا ليس خارج المجلس المجال.
المدخلات تطلب يتم تجهيزها مع الكمون وهذا يتوقف على الاطار معدل للعبة (مثلا : 75 Hz) ، وتطلب الى حيز التنفيذ (اذا كان صحيحا) على الفور.
قطعة يمكن الاستغناء عنها من دون اي تدخل في خط الخطوات التي تحدث.
قطعة يمكن ان يترجم عدة مرات الى اليسار ، أو الحق ، واسقطت في وقت لاحق ، وكل ذلك دون اي تشهد خطوة تندرج في الخط الرسمي.
لان قطعة ولدت حديثا لا يمكن ان تكون بالتناوب (لانه تمسك ضد كبار حافة المجلس) ، علما ان اللاعب يجب ان تقبل على الاقل قطعة واحدة تقع في خطوة هي اذا كان التناوب المنشود او المطلوب.
اثر على النتيجة ضءيله.
5.7 قطعة "هبوط" مستوى tetris
اذا كان هو مجرد قطعة في انخفاض ، أنها تقع على التوالى من جانب واحد خلال كل قطعة تقع في التكرار.
وسيكون هناك تكرار التي تتحرك من مكان مع اي اتصال مع السطوح الافقيه الى مكان اتصال مع السطوح الافقيه. ويحدث هذا التكرار مرة واحدة ، هي قطع الاتصال في استراحه.
وإذا كان تكرار قطعة يبدأ في استراحه للاتصال مع سطح افقي ، وقطعة "الارض" ، ويصبح جزءا من كومة جامدة.
5.8 "اكملت الخطوط" القياسيه tetris
الانتهاء من صف هو صف من كومة في كل الخلايا التي يحتلها. وعندما أكملت الصف هو التخلص من الفرن ، والصفوف فوق تحولت هي القضاء على التوالي انخفضت بنسبة صف واحد للقضاء على الفجوه ، وهذا ما تعول الانتهاء من "الخط."
عندما قطعة اراضي يصبح جزءا من الفرن.
مباشرة بعد قطعة الأرض ، كومة من اجل التحقق من استكمال الصفوف ، والانتهاء من جميع الصفوف يتم القضاء عليها.
يصل الى اربعة صفوف يمكن الانتهاء منه في وقت واحد.
الجدول التالي يعطي الحد الاعلى على الانتهاء من الخطوط في وقت واحد قطعة واحدة :
piece max. simultaneous
rows completed
===== ==================
"O" 2
"I" 4
"S" 2
"Z" 2
"L" 3
"J" 3
"T" 2
5.9 Tetris "المستويات" القياسيه
وقد tetris مستوى 10 مستويات صعوبة ، وبلغ عدد 1 (واحد) من خلال 10 (عشرة) ، مع 1 يجري على مستوى "اقل صعوبة."
مستوى الرقم القياسي هو الحد الأقصى من هذه القيم :
actualLevel = max( initialLevel, earnedLevel );
فان قيمة initialLevel هو مستوى اللاعب ان يختار عند بدء لعبة جديدة.
نمط مستوى وظيفة من وظائف الخطوط هو الانتهاء من ملاحظتها بسهولة في مرحلة ما قبل التجارية MS-DOS نسخة من tetris :
{ 0, 1, 2, ..., 10 } --> earned level 1
{ 11, 12, ..., 20 } --> earned level 2
{ 21, 22, ..., 30 } --> earned level 3
{ 31, 32, ..., 40 } --> earned level 4
{ 41, 42, ..., 50 } --> earned level 5
{ 51, 52, ..., 60 } --> earned level 6
{ 61, 62, ..., 70 } --> earned level 7
{ 71, 72, ..., 80 } --> earned level 8
{ 81, 82, ..., 90 } --> earned level 9
{ 91, ... } --> earned level 10
وهكذا ، فان قيمة earnedLevel يحتسب تبعا لخوارزميه التالية :
if (linesCompleted <= 0)
{
earnedLevel = 1;
}
else if ((linesCompleted >= 1) && (linesCompleted <= 90))
{
earnedLevel = 1 + ((linesCompleted - 1) / 10);
}
else if (linesCompleted >= 91)
{
earnedLevel = 10;
}
5.10 Tetris القياسيه التي تقع في تكرار التأخير
Tetris مستوى له في الوقت الحقيقي بين تأخير المتعاقبه خط الحرة التي تقع في التكرار وظيفة من وظائف على مستوى الصعوبه الحالية.
التالية العلاقة بين مؤشر وهبوط مستوى تكرار تاخير على اساس المتكررة هعاس القياسات على جميع المستويات من قبل التجارية MS-DOS نسخة من tetris.
actualLevel iterationDelay [seconds]
(rounded to nearest 0.05)
============ =========================
1 0.50
2 0.45
3 0.40
4 0.35
5 0.30
6 0.25
7 0.20
8 0.15
9 0.10
10 0.05
وهكذا ، نقرر ما يلي صيغة لتكرار تأخير قيمتها بوصفها وظيفة من المستوى الفعلي الرقم القياسي :
iterationDelay = ((11 - actualLevel) * 0.05); // [seconds]
واذا كان المجلس فارغ ، وليس هناك اي مدخلات المستخدمين ، ولدت في قطعة المستوى الفعلي 1 في الاراضي 10 ثانية تقريبا ، ولدت في قطعة المستوى الفعلي 10 الاراضي 1 فى حوالى الثانية.
5.11 "النتيجة" القياسيه tetris
المعيار الوحيد tetris جوائز نقطة للقانون قطعة من الهبوط.
لا توجد نقاط الممنوحه لاجل الانتهاء من قانون خط واحد ، أو الانتهاء من اثنين او ثلاثة او اربعة اسطر في وقت واحد.
[ملاحظه : بعض البدائل للجائزة tetris نقطة للقانون الانتهاء من الخطوط ، مع تزايد اضعافا مضاعفة مكافاه لعدد متزايد من خطوط انجزت في وقت واحد.
وهكذا ، فإن استراتيجية لتحقيق اقصى حد من المتغيرات في مثل هذه الدرجة من tetris ينطوي على انشاء فرص "للحصول" على "Tetris" ، لاستخدام اللغة العاميه "I" للحصول على شكل خطوط اربع في وقت واحد والحصول على الكثير من النقاط. [
اذا كان لديك فارغه المجلس ، وكنت اود ان غير "I" قطعة القيام حرة وتقع الاراضي ، أو اذا كنت على الفور انخفاض غير "I" قطعة ، يمكنك انشاء النقطه التالية باستخدام الرسم البياني التجاري التمهيدي MS-DOS نسخة من tetris :
actualLevel free-fall instant-drop
points points
=========== ========= ============
1 6 24
2 9 27
3 12 30
4 15 33
5 18 36
6 21 39
7 24 42
8 27 45
9 30 48
10 33 51
غير مدار ، والمنظمات غير "I" قطعة سقوط ما مجموعه 18 من الصفوف.
وهذا يفسر وجهة الفرق بين الحرة وانخفاض حالات الاسقاط الحالي.
من خلال تجارب مع الحالات الوسيطه ومن السهل استنتاج صيغة النقطه التالية :
pointAward = ( (21 + (3 * actualLevel)) - freeFallIterations );
علما ان هذه الصيغة لا علاقة له قطعه المسافة التي تقع!
كانت هناك وظيفة من وظائف على المستوى الفعلي ، وانزال العقوبه المقررة لعدد من التكرار هو قطعة بحرية يسمح للسقوط.
ويعاقب هذا المستخدم ليحتاجون الى الوقت للتفكير.
كما نلاحظ ان قطعة لأن لا يمكن ان يتنقلوا في البداية عندما ينشر الاولى ، لاعبا ويعاقب مجانيه واحدة على الاقل - تقع في التكرار إذا كانت هناك حاجة الى تناوب مكان قطعة في الفرن.
وهذا ربما يؤثر على اللاعبين على الاطلاق ، الا اذا كانت الى حد ما : الاعتراف قطعة ، اضغط على مفاتيح الترجمة (الى "اليسار" أو "اليمين)" ، اضغط على "تدوير" مفتاح واحد او اكثر احيانا ، "وانخفاض" الصحافة الرئيسية ، كل في حدود اقل من ثانية في 0.5 مستوى 1 ، أو 0.05 اقل من ثانية في مستوى 10.
6. استراتيجية موحدة tetris
6.1 مقدمة
استراتيجية للعب لعبة تعتمد على قواعد اللعبة.
استراتيجية تعتمد على المعلمه التي هي الامثل.
في tetris الموحدة ، واحدة تعيش استكمال الصفوف ، ويحصل على نقاط للهبوط قطعة ، وعشرات من اهم النقاط الممكنة لتنفيذ كل قطعة وبنسبة انخفاض واحد او اكثر قبل ان الحرة تقع في التكرار ارشح.
A.I. احد النقاط التي يمكن أن أمثل لمنح كل قطعة بمجرد اتخاذ قرار بشأن التحرك بسرعة "والضغط على مفاتيح" لتنفيذ التحرك.
اكثر اهمية لA.I. هو البقاء على قيد الحياة ، لأن البقاء على قيد الحياة غير مسمى يعني تعسفا ارتفاع درجة لا يمكن تحقيقه. لأن tetris قطعة تقع على سعر محدد ، ويجب ان A.I. اتخاذ قرارات سريعه وهذا على الاقل -- وA.I. الخطوات التي يجب ان تبذل كامل الصفوف في ان يبلغ متوسط معدل لا يقل عن 1 في الصف 2،5 لكل قطعة. (4 لكل قطعة وقد الخلايا ، وفقد كل صف 10 الخلايا.)
وبطبيعة الحال يمكن للمرء ان تأجيل إكمال الصفوف وقطع طريق مراكمه بناء كومة كبيرة ، ولكن لا يوجد سوى 200 الخلايا على المجلس بأكمله ، من حيث المبدأ ، لا يمكن إلا ان يستحوذ على 50 قطعة ، حتى اي لاعب (مثل A.I.) يجب ان يكون اكمال الخطوط اولويه اساسية.
في tetris الموحدة ، لعبة الدولة ويشمل المجلس الحالية والاحتلال الحالية التي تقع في قطعة (النوع ، الموقف ، والتوجه). اللعبة اختياريا يجوز للدولة ان تشمل "قطعة المقبل".
6.2 سلسلة من التناوب "S" و "Z" قطعة
Heidi Burgiel ، دكتوراه ، من Department of Mathematics, Statistics and Computer Science في University of Illinois at Chicago ، وقد ثبت ان سلسلة من التناوب "S" و "Z" قطعة سوف قوة موحدة (10 - العمود ، على التوالي - 20) لعبة tetris تحقيقا لهذه الغاية يمكن التنبؤ به عدد من التحركات.
اقتباس من نص المادة : "You can't win a game in which only alternating 'S' and 'Z' pieces appear."
ترتبط المادة المطبوعه : Mathematical Gazette ، تموز / يولية 1997 ، "How to Lose at Tetris"
Heidi Burgiel يوفر Java applet تمشي في متصفح الانترنت التي غيرت ملامح وجود نسخة tetris ان ينشر بالتناوب "S" و "Z" قطعة.
[ "Tetris الموحدة" البرمجيات المرتبطه انت قراءة الوثيقة أيضا أسلوب التناوب الذي ينشر "S" و "Z" قطعة. [
Heidi Burgiel المطالب التي تنطوي على لعبة التناوب "S" و "Z" قطعة (للاطلاع على مستوى tetris المجلس من 10 اعمدة وصفوف 20) يجب ان تنتهي قبل اقل من 70000 قطعة قد انخفض.
مستوى tetris البرامج المرفقه مع هذه الوثيقة على شخص يمكن ان تؤديه الالعاب بالتناوب مع "S" و "Z" قطعة ، وتغيير المجلس العرض.
ومن السهل ان نرى ان المجالس التي هي الاعراض اضعاف عدد صحيح من أربعة أعمدة (امثلة : 4 الاعمده ، اعمدة 8 ، 12 الاعمده ، الخ) يمكن ان تقوم الى الابد عندما قطع بالتناوب بين "S" و "Z" ، مع ارتفاع الكومه لا 4 اعلى من الصفوف. وأذكر هذا لتجعل من الواضح ان تقتصر على البقاء وصفها في وثيقة من وثائق الابحاث المشار اليها اعلاه على وجه التحديد لحالة وجود معيار tetris المجلس (10 مع اعمدة وصفوف 20).
6.3 سلاسل للحل قطعة في العام
وهناك فئات من كل سلاسل المرضيه التي لا يمكن البقاء على قيد الحياة.
ومن المثير للاهتمام لحساب مجموع مواجهة احتمال انهاء اللعبة - التسلسل ، لان من شأن ذلك ان وضع الحد الاعلى عن أداء أي استراتيجية ، حتى مع معرفة كاملة من جميع القطع في المستقبل عند اي نقطة في لعبه.
6.4 المجموع ممكن تشكيلات المجلس
وبالنظر الى ان المجلس قد 10 * 20 = 200 الخلايا ، ونظرا الى ان كل خلية لا يمكن الا ان يكون في واحدة من دولتين (فارغه او المحتلة) ، فان العدد الاجمالي للتشكيلات المجلس يجب أن يكون أقل من أو يساوي : (2 ^ 200).
وبالنظر الى ان كل قطعة 4 خلايا يضيف الى المجلس ، وانجاز كل صف 10 يزيل الخلايا من المجلس ، فان عدد الخلايا المحتلة على المجلس ستكون دائما حتى. فعلى سبيل المثال ، (3*4 - 1*10) = 2 ، (1*4 - 0*10) = 4 ، (4*4 - 1*10) = 6 ، (2*4 - 0*10) = 8 ، (5*4 - 1*10) = 10 ، الخ وهكذا ، نجد ان النصف فقط من (2 ^ 200) المجلس التكوينات التي توصل اليها يمكن ان تلعب لعبة.
وهكذا ، فإن العدد الاجمالي للتشكيلات المجلس نحو : (2 ^ 199) = 8.03469... * 10^59.
ومع ذلك ، فاننا ينبغي ان يستبعد من اي وبلغ اجمالي التكوين ويشمل ذلك شغل الصفوف ، لان ملء الصفوف يتم القضاء قبل نهاية كل الانتهاء من التحرك. أي تشكيل واحد او اكثر من ملء الصفوف سوف تنهار الى ان التكوين آخر لا يحتوي على اي شغل الصفوف.
كذلك كان علينا ان استبعاد اي ان يتضمن التشكيل غير فارغه اعلاه صف واحد أو أكثر فارغه الصفوف ، لان عدم صف فارغ اعلاه صف فارغ دائما فال ، والتي تقع في جميع يتوقف قبل نهاية كل تحرك.
يمكن ان تكون كل صف في 2^10 = 1024 الدول ، ومن بينها "فارغه" ، وهي واحدة من "الكامل" ، والتي هي من (1024 - 2) = 1022 جزئيا للاحتلال. ونحن استبعاد "الكامل" من النظر في القضية.
وإذا كان الصف الأسفل فارغه ، ثم فوق جميع الصفوف الصف الاسفل ويجب ايضا ان يكون فارغا.
وإذا كان الصف الأسفل جزئيا للاحتلال ، ثم الصف الثاني يمكن ان تكون فارغه او جزئيا للاحتلال.
استمرار هذا التحليل ، يمكننا ان احسب عدد من تشكيلات المجلس أن يأخذ في الحساب الى استبعاد كامل الصفوف والقيود المفروضة على الصفوف فارغه : 1 + (1022 * (1 + 1022 * (1 + 1022 * (1 + 1022 * (... * (1023)))))) ، وهو مبلغ يمثل نحو ((1022 ^ 19) * (1023)).
وهكذا ، فإننا نجد من اجراء تقديرات ادق من العدد الاجمالي للتشكيلات المجلس مستقرة : (1/2) * ((1022 ^ 19) * (1023)) = 0.9625... * (2 ^ 199) ، أي نحو 3،74 فى المائة اقل من (2 ^ 199) تقدير.
ومع ذلك ، فان العدد الفعلي للاستقرار ، ويمكن الوصول اليها دول المجلس ومن المرجح ان يكون اقل وخاصة نظرا لحقيقة ان معظم الصفوف العليا لا يمكن الا ان يكون شغلها في عدد قليل من الطرق. كما ان معظم من اعلى الى ملء الصفوف ، ولدت حديثا قطعه لا يمكن نقلها ، او بالتناوب الى حد كبير. وهذا يحد من عدد من الطرق من الاعلى الى معظم الصفوف يمكن ملؤها.
6.5 من حيث المبدأ ، فإن افضل ويمكن الاطلاع على التحرك لاي قطعة المجلس والتكوين
لأننا يمكن الحصول على اي قطعة من سبع ممكنة للمجلس أي دولة ، فإن العدد الاجمالي للعبة الدول نحو 7 * (2 ^ 199) = 5.624... * 10^60.
لاننا نستطيع ، من حيث المبدأ ، هل بحث عميق من كل ما يمكن من اجله كل ما يمكن لتحرك لفئة معينة من لعبة الدولة ، ويمكن ان يكون لنا واحد "افضل" التحرك لعبة المرتبطه بكل دولة.
ونحن نفترض ان ليس لدينا امكانيه الحصول على اي معلومات اخرى غير الحالية والمجلس الحالي قطعة ، حتى "افضل" تعني "ان الاتجاه الذي يوفر اكبر فرصة لإرضاء لدينا هدف طويل الاجل للبقاء على قيد الحياة".
الانتقال من مجرد ترجمة (تصل الى 10 خيارات) والتناوب) تصل الى 4 خيارات) ، يمكننا بسهولة تشفير افضل للتحرك في بايت واحد.
ذلك ، من حيث المبدأ ، فإننا يمكن أن تشكل مداخل 10^61 مع الجدول (بايت) قال لنا ان افضل ونظرا لتحرك أي دولة والمجلس الحالي قطعة.
وهذا بطبيعة الحال أمر غير عملي ، تماما كما في سرد جميع "Go" او مجالس "Chess" مجالس امر غير عملي. ولكن النقطه هي ان يكون هناك حل حقيقي واحد ، وثمة افضل للتحرك في اي تشكيل. قد تكون هناك نفس القدر من التحركات الجيدة لفئة معينة من التشكيل ، ولكن لا بد من اختيار واحد تعسفا من التحرك في هذه القضية.
- يلعب لعبة العديد من الخوارزميات التي جداول الحصر ان أعدد كل امكانيات الدولة لعبة ضمن سياقات محدودة ، مثل "فتح (الاولى) التحرك" او "نهاية اللعبة (الاخيرة) التحرك" في الشطرنج. ولعل حصريه تعداد tetris كومة السطوح) (20 ^ 10) الدول تقريبا) امر ممكن. انها فكرة مثيرة للاهتمام.
تعداد شامل لجميع الدول من اسفل صفين ، مضروبا في سبع قطع ممكن ، وتخزين افضل للتحرك في بايت واحد ، سيكون من السهل جدا ؛ لا تتطلب سوى 7 MB الذاكرة. ولعل الاداء الامثل لهذه الحالات من شأنه ان سبعة ملايين توفير البيانات الخام على حد سواء لتحليل ووضع نماذج بسيطة للبيانات ؛ مثل هذه النماذج يمكن ان تعتبر جزءا من مجمل المثالي tetris لعب الاستراتيجيه.
علما ان التنفيذ لا يزال افضل التحركات لا حمايتنا من الممكن انهاء المرضيه لعبة - قطعة سلاسل. لكنه ما لبث ان علينا دائما ان تتحرك وتتيح لنا امكانيه الحد الاقصى للبقاء في المستقبل بالنظر الى ان كل قطعة في المستقبل تماما عشواءيه (غير معروفة في ذلك الوقت ونحن ان تقرر كيفية التحرك واحدة قطعة المعروفة حاليا).
6.6 في الوقت الحقيقي الاداء
احد المعوقات التي تواجه بعض الخوارزميات استراتيجية هي الحاجة في الوقت الحقيقي الاداء -- بمعنى ان الخوارزميه يجب اتخاذ قرار في غضون مبلغ محدد من الزمن.
عندما يلعب tetris الانسان ، والقطع لا تتوقف عند سقوطه على اعطاء اللاعب فرصة للتفكير. وهذا جزء من التحدي للtetris. وبالتالي ، فإن نظام A.I. الذي يقصد منه لمحاكاه دور انساني لاعب ويجب ايضا اتخاذ قرارات في معدل تمليها لعبة tetris.
6.7 والمجاميع قطعه على التوالي
نلاحظ انه في المدى الطويل ، وانخفض عدد القطع هو على مسافه قريبة جدا من 2.5 اضعاف عدد تكتمل صفوف -- لان كل صف 10 في الخلايا ، ولكل قطعة 4 في الخلايا ، ويجب علينا أن الكامل على التوالي ، في المتوسط ، مرة واحدة كل قطعة (10/4) = 2.5 اسقطت.
حتى يمكننا استخدام "الانتهاء من الصفوف" و "اسقطت قطعة" بالتبادل مع ما يقرب من المناسب ثابت التناسب. اكبر خطأ هو ان المجلس عندما تملأ تماما باستثناء وجود فجوه واحدة في كل صف (((10*20)-20)/4) = 45 قطعة انخفضت ولكن قصور (45/2.5) = 18 من المتوقع الانتهاء من الصفوف.
6.8 - قطعة الحالية (والمجلس) استراتيجية
واذا كنا A.I. الا يسمح لعلم المجلس الحالية وقطعة الحالية ، ونحن ننظر فقط نتيجة لتحريك قطعة الحالية بطرق معينة ، فان ذلك يمكن تسميته "قطعة واحدة" التحليل.
هنا هو رسم تقريبي لكيفية قطعة واحدة يمكن ان يقرر بناء على تحليل تحرك في tetris :

- تحليل الحالية قطعة من لعبة tetris الدولة
اساسا نحن نحاول كل ما يمكن من التحرك واختيار التحرك أن يعطي نتيجة أفضل.
الجزء الصعب هو نتيجة كل تصنيف.
ويجب علينا ان معدل افتراضي لعبه دولة وفقا لمدى نجاح مثل هذه الدولة تدعم اعمالنا القصيره الاجل والطويلة الاجل الاهداف.
التزامنا الطويل الاجل والهدف من ذلك هو البقاء على قيد الحياة. البقاء على قيد الحياة يعتمد على منع فيضان كومة من المجلس. ونحن يمكن ان تقلل من ارتفاع الكومه كاملة عن طريق تشكيل الصفوف يتم بعد ذلك التخلص من الفرن.
لشكل كامل على التوالي ، ويجب ان تناسب أجزاء من القطع في كل عمود الى ان على التوالي. وهكذا ، نحن نطلب من كل اجزاء من صف الى ان تتعرض لانخفاض القطع اذا اردنا في نهاية المطاف ملء كامل على التوالي.
اذا كان لسبب من الاسباب ونحن فارغه تغطية على اجزاء من قطعه على التوالي من قبل على أي إرتفاع على التوالي ، ثم نحن الآن غير قادرة على ملء فارغه في تلك الأجزاء من الصف. والطريقة الوحيدة (بافتراض عدم حدوث اي انزلاق) للوصول الى هذه "الثقوب دفن" هو القضاء على الصفوف التي اعلاه بوصفها أجزاء العقبات.
العوامل التالية هي من بين تلك يمكننا استخدام سعر معين لمجلس الدولة :
Overall pile height
ارتفاع الكومه ، واسوأ من وضعنا ويبدو ان ، لأننا أقرب الى فيضان المجلس.
Roughness of pile area (number of times cells alternate between empty and filled as any row or column is scanned)
وقد اخشن الكومه ، ومن الارجح انه سيكون من الصعب في لملء جزءا لا يتجزأ من جميع المخططات المعقده لانها اصبحت تتعرض الى السطح.
Number of buried empty cells
الاكثر الثقوب نكون قد دفن ، هو اسوأ من وضعنا ، لأننا يجب ان تكشف ثغرات ودفن قبل ان نتمكن من اكمال المقابلة من الصفوف.
يمكنك ان تتخيل ان هناك عوامل اخرى بصفة عامة معدل افتراضي للتخلص من المجلس على مدى دورتها يمكن ان تستوعب كل كومة من القطع الممكنة في المستقبل ، وكيف تنظر الى الوضع الجيد للجميع ممكن من هذه القطع.
العدد القادم هو كيفية تحديد الاهميه النسبيه لهذه العوامل.
واحد ويتمثل النهج العام التالي. تكليف مجموعة من "الاوزان" (الاهميه النسبيه) الى هذه العوامل ، ثم محاكاه العديد من المباريات وسجل نتائج هذه الالعاب (النتيجة النهائية ، الخ). بعد ذلك ، تعيين مجموعة جديدة من الاوزان ومحاكاه مجموعة جديدة من الالعاب. على أساس ما إذا كانت او لم تكن مجموعة جديدة من الالعاب قد نتائج افضل من السابقة مجموعة من الالعاب ، ونحن نعرف اذا كانت مجموعة جديدة من الاوزان كان أفضل من السابقة مجموعة من الأوزان.
في بلدي التجارب حاولت البحث المنهجي والعشوائي البحث عن المجموعات الجيدة الوزن ، ولكنني لم نلاحظ اي على نطاق واسع الاتجاهات انني استطيع ان أعبر عن متابعة. ومع ذلك ، رأيت العديد من الغريب ان السلس عقبات. اعتقد انه كان مثيرا للاهتمام ان متوسط الأداء السلس يمكن ان تشكل المنحنى البارامترات عندما كان ببطء تختلف مع غيرها من المعالم التي عقدت في الجمع بين بعض القيمه.
افضل في الوقت الحقيقي ، قطعة واحدة tetris خوارزميه في العالم ، التي انشأها Pierre Dellacherie (فرنسا) في 2003 ، يعزى الى حد كبير من نجاحها الى مجموعة من المقاييس (او القياسات). من الضروري العثور على الاوزان عندما الامثل استراتيجية ، ولكن ومن الاهميه بمكان ايضا ان تبدأ مع انواع من القياسات التي تكشف عن الخصائص ذات الصلة للدولة.
Pierre Dellacherie's اختراع طرق جديدة لتحديد خصائص كل مجلس يجعل له حقا ممتاز خوارزميه ؛ المجلس خصائص التقاط الابعاد الاستراتيجيه الهامة للمجلس الدولة.
ويمكن للمرء ان وضع مختلف جدا وصف مجموعة من الأبعاد التي عملت ايضا على قدم المساواة ؛ وانا واثق من انه من الممكن ان تمتد ذات الصلة لمجلس الدولة فى الفضاء العديد من الطرق المختلفة التي يمكن استخدامها لتحديد استراتيجية مهمة. والحل هو ان نجد أن خصائص المشروع الفضاء الدولة نزولا الى عدد صغير من الأبعاد التي يمكن استخدامها لوضع تصنيف وظيفة بسيطة (مثلا : الخطيه المرجح مجموعات من الخصائص التي تستخدمها Pierre's خوارزميه).
قطعة واحدة الخوارزميه التي تستخدمها "bot" في "xtris" البرمجيات (1996) التي كتبها Roger Espel Llima تستخدم الاوزان التي تحددها واسعة النطاق من الممكن استكشاف الوزن من قبل مجموعات "الخوارزميات الجينيه". محاكاه الصلب هو آخر وسيلة ممكنة متعددة الابعاد للاستكشاف الفضاء مجموعات من وزنه.
ويبدو انه ، استنادا الى ملاحظات مختلفة ، متعددة الابعاد وظيفة من متوسط اداء tetris بوصفها وظيفة من الاوزان ، مثلا : F(w1,w2,w3,...) ، هو "التقريبيه" (الكثير من الحدود العليا والدنيا المحلية ، وهو ما يعني ان مجرد متعددة الابعاد "تسلق تلة" قد لا تعمل.
6.9 عندما الاستراتيجيه الحالية قطعة ، قطعة المقبل ، والمعروف ان المجلس
اذا كانت استراتيجية خوارزميه بالنظر الى الحاله الراهنة هي قطعة ، قطعة المقبل ، والمجلس ، ومن ثم اتخاذ القرارات التي يمكن الاستفادة من مجموعة من القطع.
المعرفه القادمة من قطعة ويمكن تحسين نجاح اي خوارزميه tetris اللعب بها عدة أوامر من حجم هذه المشكلة. ومن السهل ان معرفة كيفية فهمه القادمة قطعة فهناك فرق كبير في الاستراتيجيه.
هل يمكن لأحد أن "مجنون" التحركات ، مثل تغطية فتحات ضخمة ، الخ ، لانهم سبق ان نعلم ان قطعة المقبل يمكن ان تستخدم ل"فيكس" الحاله. اذا كنت لا تملك المعرفه القادمة من قطعة ، وأنت تحاول باستمرار تقوم به الاحتمالات ، ومحاولة ابقاء الخيارات مفتوحة الخاصة بك في حالة قطعه المقبلة ليست مثاليه.
فيما يلى رسم يوضح كيف يمكن ان جميع التحركات الحالية تعتبر قطعة ، وبالنسبة لكل خطوة من هذا القبيل ونحن نعتبر كل ما يمكن من التحركات التي تنطوي على قطعة المقبل.

الاستراتيجيه الحالية التي تنطوي على قطعة وقطعة المقبل
مستوى tetris البرمجيات تستخدم هذه الاستراتيجيه عندما "قطعة المقبل" تمكين المستخدم من قبل ويظهر على الشاشه ، وعندما اثنين - قطعة A.I. تمكين (مثل واحد كتب لي ، Colin Fahey). واذا كان "قطعة المقبل" تكون غير مرئية على الشاشه ، واثنين من بلدي - قطعة تقع العودة الى قطعة واحدة A.I..
بلدي - قطعة واحدة A.I. رهيبه اذا ما قورنت الاخرى AIs في مستوى البرامج tetris ؛ ذلك وهذا يدل على مزيد من المعلومات المفيدة لك (على سبيل المثال : قطعة القادمة) ويمكن لنظام A.I. ؛ انه يكفي لتحسين اداء بلدي متوسط - قطعة اثنين A.I. عدة أوامر من حجم -- بسهولة متجاوزا اداء افضل A.I. قطعة واحدة في العالم.
(ومع ذلك ، تحويل أفضل A.I. قطعة واحدة في العالم للنظر في قطعتان من شأنه ان يسهل تحسين بها عدة أوامر من حجمها ، أيضا! معرفة القادم هو قطعة ضخمة!)
اول اختبار لعبة مع اثنين من بلدي - قطعة A.I. استغرقت 182 ساعة تقريبا (7،6 يوما) على 800 MHz PC ، وانجاز 7216290 الصفوف. انني لم اختبر الخوارزميه على أسرع جهاز كمبيوتر.
عند حفظ الدولة من tetris لعبة (Shift-W) الى ملف نصي ، يمكنك بعد ذلك نسخ ولصق قائمة من الأرقام ، من باب "heightHistogram" ، لجداول البيانات اكسل.
كل بن لفي المدرج الاحصائي ويبين عدد من الخطوات التي انجزت وانتهت ولا سيما مع ارتفاع الكومه (وبعد اكتمال الصفوف يتم القضاء). كما يمكنك أن تتخيل ، مما يزيل تماما ان تحرك كومة امر نادر الحدوث ، ولذلك فان العدد الاجمالى للتحركات التي تنتهي مع كومة من الصفر ارتفاع منخفض نسبيا.
وفي الوقت نفسه ، يجب ان نتوقع ان ارتفاع الكومه عامة حول بعض يتقلب في المتوسط ، حتى صناديق المقابلة لهذه الصفوف وسوف تسيطر على المدرج الاحصائي. واخيرا ، صناديق لمعظم الصفوف العليا (حيث نحن في خطر من فيضان المجلس) المجاميع منخفضه جدا.
وعلى مدار ساعات طويلة ، مع A.I. تلعب لعبة واحدة باستخدام استراتيجية تنطوي على المعرفه من "قطعة المقبل" ، واخذت عينات عشواءيه من لعبة الدولة ، نسخ الكومه الى الارتفاع المدرج الاحصائي جداول البيانات على النحو المبين ادناه :

كومة المدرج الاحصائي سجل ارتفاع في نقاط مختلفة في عملية نموذجية لعبة (الحالية والمقبلة - قطعة استراتيجية)
يمكنك الجدول كل المدرج الاحصائي من اجمالي عدد القطع (العدد الاجمالي للالانتهاء من التحركات) للحصول على البيانات التالية :

حجم المدرج الاحصائي ، ونظرية
الشيء الرائع هو ان حجم هذه المدرج الاحصائي نظرة متطابقه رغم اختلاف اوامر من حجم أو عدد القطع (انجزت التحركات) المعنية.
فقط من خلال النظر الى الارقام ادليت به فرضية ان الذيل هو من منحني هائل الانحلال. عن طريق التجربه والخطأ الاول جاء الخام مع النظريه القاءله ان الذيل وصفة :
relative_frequency = ((0.122) * ((0.375)^(row-5)))
الرسم التالي يبين حجم المدرج الاحصائي خلال مجموعة كاملة من الصفوف.

الرسم البياني للحجم المدرج الاحصائي
نلاحظ ان منحنى ل50000 قطعة ، والمنحني ل2000000 قطعة ، وانحناء الذيل نظرية تكاد تكون المباشره في هذا النطاق.
فيما يلى القاء نظرة فاحصة على رأس المنحني.

الجزء الاسفل من ارتفاع المدرج الاحصائي
التالية هي الى حد كبير - الى تضخيم القصوى نظرا للذيل للقياس والنظريه المدرج الاحصائي المنحنيات.

وبالنظر الى تضخيم اقصى ذيل حجم المدرج الاحصائي
كما انك قد تتوقع ، ومن النادر جدا ان الكومه لتصل الى تلك المرتفعات حتى في تجارب طويلة -- ولكن حتى مع شركائنا في أدلة محدودة في هذه المنطقة المتطرفة ، ما زال يبدو مقبولا من الناحية النظريه.
في الرسم البياني الكامل لنظرية التداخل ويبدو ان الذيل للتوزيع "تماما" ، في حين تتعاظم في الرسم البياني للذيل الذيل ، ونحن نرى خطا واضحا. ولكن اشدد على ان ذلك يرجع الى عدم كفاية البيانات في هذه الكومه مرتفعات المتطرفة. اذا كان لي ان زيادة اللعبة الى المجلس ، على سبيل المثال ، يبلغ ارتفاعها 25 الصفوف الصفوف بدلا من 20 ، حتى ان لم يكن انهاء العاب فجاه ، واعتقد انني قدمت النظريه المذكورة اعلاه من شأنه ان تتزامن تماما مع الاتجاه.
شعوري هو ان هذا المدرج الاحصائي هو نتيجة مباشرة لمجتمعه من tetris A.I. وقواعد tetris. بذلك ، هذا وسيتم توزيع نفسها لاحظ على اي عمل عشوائي على المدى الطويل لعبة tetris باستخدام بلادي A.I. استراتيجية خاصة للعب مع "قطعة المقبل" المعرفه.
وعلاوة على ذلك ، واعتقد ان هذا النوع من المدرج الاحصائي يمكن ان تستخدم للمقارنة بين AIs التي توظف المعلومات نفسها في حين لعب. وهكذا ، لم يكن لديك لانجاز تقوم به مباريات (التي يمكن ان تستمر لأيام او سنوات) لمقارنة الأداء طويل الاجل للاستراتيجية مختلفة الخوارزميات.
فعلى سبيل المثال ، على الرغم من بساطة النموذج بلادي ، واعتقد انه يمكن استخدامها للتنبؤ متوسط المده لعبة! ونحن ببساطة اكتشاف كيفية يجعل الكثير من القطع "21 على التوالي" كومة ارتفاع عدد كبير ، مثل العد من واحد.
التواتر النسبي ل21 على التوالي ، وفقا لبلدي بسيطة من الناحية النظريه ، هو :
((0.122) * ((0.375)^( 21 -5 ))) = 1.8 * 10^(-8)
يجب ان تضاعف هذا العدد بحلول (5.3 * 10^(7)) ، نحو 50 مليون دولار ، للحصول على قيمة واحد.
ومن ثم ، فاننى تقريبا ان التنبؤ بلادي الحالية "قطعة المقبلة" ليست سوى استراتيجية جيدة للبناء على امر من 10 مليون دولار تقريبا الانتهاء من الصفوف. احد الاسباب انني اوجه هذا تقدير متحفظ هو حقيقة انه حتى 18 الصفوف يمكن ان تكون مميتة A.I. لبلادي لانني لا تسمح للنظر في بلدي A.I. قطعة حتى لقد سقطت واحدة على الاقل في الصف! (وهذا هو الحال انني لا داعي للقلق حول عدم القدرة على تدوير قطعة.)
انني أثمن من أن يلعب فقط 50000 قطعة (وربما اقل بكثير قطعة) يمكن ان تعطيك جيدة للغاية تقدير للارتفاع على المدى الطويل المدرج الاحصائي ، وبالتالي فان اي تقدير جيد من اجل الانتهاء من حجم الصفوف قبل المباراة الغايات. وهذا النهج سرعان ما قيمة للغاية لتقييم التغيرات الدقيقة في A.I. وهذا هو بالفعل عمل جيد للغاية.
6.10 المجلس تقييم القياسات يقلد المضاربه ننظر الى الأمام -
اذا خوارزميه ، مثل واحد مع انني قدمت هذا المشروع ، يحاول مجرد قطعة جميع التوجهات وترجمات لاسقاط ، ومعدلات كل مما أدى الى تشكيل المجلس وفقا لقدر من الجداره ، الخوارزميه هي اساسا تقليد "- ننظر الى الامام".
عندما تستخدم مقاييس واحدة مثل "كومة الارتفاع" ، و "الثقوب دفن" ، "وعورة سطح" او "بالاضافة الى الاعماق" ، هي حقا واحدة باستخدام شكل مبسط لل"نتطلع الى الامام". هذه الخصائص العامة للمجلس تعطي بعض المؤشرات على الاستمرار في الأجل الطويل للمجلس.
النهج المثالي ، وبالنظر الى كمية لا حصر له من القدرة الحاسوبيه ، وسيكون لتقييم المجلس وبالنظر إلى كل ما يمكن من تشكيل القطعه التي يمكن ان تتبع سلاسل.
رغم انك يجب ان تنظر فى كل قطعة 7 من المحتمل انها على قدم المساواة في كل مستوى من مستويات - نظرة الى المستقبل ، انت بحاجة الى الترجمة الفعليه الامثل (حتى 10) والتوجهات (حتى 4) عن كل قطعة في كل التسلسل الزمني المحتمل! وهذا يصل الى (7*10*4) = 280 فروع في كل مستوى من مستويات التقييم المجلس! ذلك ، ان الأمر ((280)^(LookAheadLevels)) الى المجلس للنظر في التكوينات.
لاننا يجب ان ينهي بعد تحليل عدد محدود من المستويات ، ونحن بحاجة الى بعض المنظمات غير ننظر الى الامام - طريقة تقييم مجلس الدولة -- وسيلة لاعطاء قيمة العقد الى ورقة من شجرة بحثنا. ذلك ، عقد لهذه الورقه ، ونحن على العودة الى استخدام صيغة تجسد العام للتنبؤ في المستقبل صلاحيه المجلس!
هذا النوع من المضاربه يمكن ان يحاكم مع واحد واثنين من قطعة قطعة في مكان الخوارزميات المبسطه المجلس تقييم القياسات. بعد ذلك يفترض ان كل قطعة على قدم المساواة وخلاصة القول ان من المحتمل وجود قدرات المجلس لاستيعاب جميع انواع القطع في أفضل السبل الممكنة. هذا يمكن ان يتم مع واحد ، اثنان ، او أي عدد من المضاربه تحرك اعماق -- مع كل قطعة متساويه في محتمل (p=1/7).
المحطة عقد من هذه الشجرة قد لا تزال تتطلب مقاييس لتقييم مرجح ، ولكن المضاربه طبقات اكثر دقة التقاط جوهر ما نريد ان نفعله : تحديد مدى معين يمكن للمجلس ان يقبل كل ما يمكن قطعه ، بما فيها العوامل الايجابية ومنها اكمال خطوط والعوامل السلبيه مثل زيادة الطول الإجمالي الفرن ، الخ.
7. Tetris A.I. نظام مظاهره
7.1 لمحة عامة عن منظومة
هذا الرسم البياني التالي يبين بلدي الاعداد التجريبيه.

نظام شامل للتظاهر
7.2 الاجهزه
هنا هو اختيار قائمة مختصرة من المعدات المستخدمة في هذه التظاهره :
[1] Ontrak Control Systems ADR2200 RS-232 8-Relay Board: $149.00 (USD 2003)
[2] Ontrak Control Systems ADRPWR Power Supply : $ 12.95 (USD 2003)
[3] Creative WebCam Pro (640x480 USB video camera) : $ 39.95 (USD 2003)
ومن الواضح ان يمكنك استخدام معدات مماثلة لتحقيق نفس النتائج. مزيد من التفاصيل حول المعدات التي ورد وصفها في الاقسام المناظره من هذه المادة.
هنا وصف موجز للالحواسيب الشخصيه المستخدمة في هذه التظاهره :
[1] Personal Computer (PC), 350 MHz, Windows 98 [Runs video game]
[2] Personal Computer (PC), 800 MHz, Windows 2000 [Runs AI program]
لهذه التظاهره ويمكن بسهولة ان تستنسخ مع أنظمة التشغيل الاخرى ، مثل Linux. ومن الأهم ان يكون لها CPU السرعه بناء على امر من 800 MHz او اسرع لجهاز الكمبيوتر الذي يقوم A.I. لتشغيل البرمجيات ، لان هذا الكومبيوتر ان تفعل في الوقت الحقيقي تجهيز الفيديو.
7.3 الاستيلاء على اجهزة الفيديو
كنت مشترك USB كاميرا فيديو حسب شريط فيديو وجهاز لالتقاط A.I. نظام بلدي. على وجه التحديد ، لقد استخدمت Creative "WebCam Pro" ، USB كاميرا فيديو مع 640 * 480 القرار.

Creative(TM) USB كاميرا الفيديو الوصف

USB كاميرا الفيديو (في الزاويه)

USB كاميرا الفيديو (الجبهة)

USB كاميرا الفيديو (مع المجلس CCD)

USB كاميرا الفيديو (رقائق الرئيسية)

OV511 الرئيسية لبنات (ملاحظه : USB كاميرا الفيديو هو OV511+)
7.4 OV511 صحيفة بيانات
ov511ds.pdf
OV511 صحائف بيانات
1136328 bytes
MD5: e927d786e16baea59b7e7e54529778c0
7.5 OV511+ ( "المحسن") ميزة الخلافات
ov511plus_101.pdf
OV511+ ميزة الخلافات
56271 bytes
MD5: 388a03c56d6f67d6d5d80e3d06c4de21
7.6 التقاط برامج الفيديو
وقد Microsoft قديم جدا API اسمه "Video for Windows" (VFW) انني استخدمت بنجاح لهذا المشروع. (لكم صلة ب "vfw32.lib" في C++ المشروع الخاص بك ، او القيام DllImport "vfw32.dll" C# الخاص بك في المدونه.) أمثلة على استخدام VFW API متاحة على نطاق واسع.
والبديل هو استخدام Microsoft's "DirectShow" API القيام التقاط الفيديو.
لأن VFW احاط الا اثنتي عشرة خطوط للقانون لاستخدامها ، والقيام على نحو مقبول بلدي 800 MHz آلة ، انا لم يزعج استكشاف APIs البديله. ولكن DirectShow هو اكثر Windows المعاصرة API لالتقاط الفيديو ، ويحتمل ان المحاصيل أعلى بكثير من معدل الاطار لنفس الاجهزه.
القاء نظرة على "CPF.StandardTetris.STVideoCapture" رمز المصدر ملفات في مستوى البرامج tetris ان نرى كم هو سهل للحصول على التقاط الفيديو الى حسابك في المشاريع الخاصة بها.
7.7 التبديلات الى واجهة الحاسوب (عن طريق ، RS232)
ان يكون جهاز كمبيوتر واحد "مفاتيح الصحافة" على لوحة المفاتيح من جهاز كمبيوتر آخر ، عدت الى استعمال "تقوية المجلس" التي تسيطر عليها نص الاوامر ارسلت سلسلة من الاتصالات بور (على سبيل المثال : "COM1") RS-232 عن طريق الكابل. وكنت انتظر كل التقويه لربط اثنين من الاسلاك محدد لوحة المفاتيح الرئيسية لمحاكاه الرئيسية للصحافه.
وهذا يتطلب فتح لوحة المفاتيح ، وجعل الصلات. وهناك العديد من اسهل الطرق لمحاكاه الرئيسية الملحه في الكومبيوتر ، ولكن أردت أن تفعل شيئا على ما يبدو اقرب ما يكون الى شخص حقا الطباعه على لوحة المفاتيح.
واحد شديد التنوع والتي هي ايضا تقوية ADR2200 المجلس هو الذي ادلى به Ontrak Control Systems :

Ontrak Control Systems ADR2200 RS232 / RS485 Relay I/O Interface

Ontrak Control Systems ADR2200 RS232 / RS485 Relay I/O Interface
يمكنك أن تبحث في "CPF.StandardTetris.STRS232" رمز المصدر الى الملفات انظر كم هو سهل أن ترسل بايت من خلال المنفذ التسلسلي ، والتي يمكن ان تستخدم بعد ذلك لمراقبة الاجهزه مثل ADR2200 المجلس المبينه اعلاه.
8. Tetris البرامج الموحدة
8.1 تحميل البرامج
اذهب الى بداية هذه المادة لايجاد رابط لتحميل شفره المصدر (C# وC++ نسخ) وبناء البرمجيات (*.exe).
8.2 موجز ميزات
ميزات البرامج :
تعليمات الشاشات والارصده الداءنه
طريقة احاديه اللون
طريقة الظل
طريقة تلميح
الزباله الصفوف
معدل مراقبة
قطعة المقبل
المجلس الحجم
قطعة S/Z
طريقة المعايره
التقاط الفيديو والاعتراف
تصحيح الأخطاء console
انقاذ اللعبة
تحميل اللعبة
8.3 بدء ظهور
عند ظهور البرمجيات بدأت :

ظهور عندما بدأت البرمجيات
8.4 طريقة احاديه اللون
افتراضيا ، ويبدو ان المجلس في اللون :

افتراضيا ، ويبدو ان المجلس في اللون.
اللون يمكن ان تتغير طريقة لاحاديه اللون (Shift + K) :

اللون يمكن ان تتغير طريقة الى احاديه اللون.
8.5 طريقة الظل
الظل حيث يشير الى اسلوب وسوف قطعة الارض. هذا مفيد جدا لمجالس كبيرة جدا ، لأنه من الصعب الحكم على قطعة حيث ستحط.

الظل حيث يشير الى اسلوب وسوف قطعة الارض.
8.6 طريقة تلميح
في اشارة الى طريقة يظهر لك فيها نخبة من منظمة العفو الدولية في الوقت الراهن - من شأنه ان التحرك في ضوء الوضع الراهن. (Shift + H)

تلميح يظهر فيها طريقة اختيار منظمة العفو الدولية في الوقت الراهن من شأنه ان يتحرك.
8.7 الزباله الصفوف
تضاف عبارة "الزباله" الصفوف في اسفل الكومه ، واحدا تلو الآخر ، يدويا. (Shift + J)

تضاف عبارة "الزباله" الصفوف في اسفل الكومه.
8.8 معدل مراقبة
وقد '+' (زائد) و'-' (ناقص) مفاتيح التحكم في السرعه للعبة.
افتراضيا ، ويدير اللعبة في مستوى السرعه ، وفقا للقواعد الموحدة tetris (السرعه على اساس الرتبه).
وهنا جدول للمعاني السرعه التحيز :
-3,-4,... : بطء يتناسب مع التحيز
-2 : ابطأ من المستوى 1
-1 : عادي ، ولكنه يقتصر على مستوى 6 (0،2 ثانية) السرعه ؛
0 : عادي ؛ tetris مراقبة السرعه القياسيه ؛
+1 : اسرع قليلا من مستوى 9) 0.05 sec التأخير) ؛
+2 : يحدها من خلال جعل سعر (مثلا : 75 Hz) ؛
+3,+4,... : التكرار متعددة لكل اصدرت الاطار ؛
احب لتشغيل A.I. في تحديد "+2" (بلغ '+' الرئيسية مرتين اذا كان الانحياز يبدأ عند الصفر).

السرعه السرعه يغير التحيز للعبة.
8.9 عرض قطعة المقبل
بلغ 'N' على عكس "قطعة المقبل" العرض. وقد A.I. سوف تستخدم "قطعة المقبل" المعلومات الا اذا كان "قطعة المقبل" يظهر على الشاشه.
واود ان اؤكد لكم ان لا تستخدم منظمة العفو الدولية "المقبل قطعة" من المعلومات عندما كنت لا تستطيع رؤية "قطعة المقبل" التي تظهر على الشاشه.

عرض قطعة المقبل
8.10 المجلس الحجم
Ctrl + الملحه (يسار ، حق ، اسفل ، حتى) ، يمكن للمرء ان تعديل حجم المجلس ، على نحو تعسفي الاحجام من 4 * 4 حتى 200 * 400.

المجلس الحجم : 4 * 8

المجلس الحجم : 20 * 40

المجلس الحجم : 40 * 80

المجلس الحجم : 20 * 5

المجلس الحجم : 4 * 100
8.11 S/Z قطعة فقط
دراسة للاهتمام S/Z نمط بالتناوب.
وهذا النمط لا يمكن ان تحل المجلس ل10 * 20 (العرض * الارتفاع).
ومع ذلك ، والمجالس التي الاعراض التي هي من 4 اضعاف هي تظهر بشكل مسلي للسماح بلا حدود البقاء على قيد الحياة.
AIs غير مسمى فان البقاء على قيد الحياة فى مثل هذه الحالات ، على الرغم من انها ليست على وجه التحديد ضبطها للتعامل مع هذه الحاله المرضيه.

S/Z قطعة فقط
8.12 فيديو طريقة المعايره
بلغ 'C' دخول "طريقة المعايره". عندما المعايره في الطور ، يمكنك بلغ عدد المفاتيح : {1,2,3,4,5,6,7} لاختيار قطعة {O,I,S,Z,L,J,T} في الجزء العلوي من اللعب المجلس.
وهذا أمر مفيد على أنها اشارة للصورة التقاط الفيديو على المعيار الثاني ، Tetris البرمجيات.
اذا كنت تضرب 0 (صفر) الرئيسية ، فإنه يقدم المجلس على بياض.
يمكنك ان تدعي البيضة من خلال اختيار قطعة قطعة (1..7) ، ثم اختيار (0) فارغه ، في حين ان الثاني التقاط الفيديو الكمبيوتر القيام الساعات للقطعة.
يمكنك تشغيل A.I. الثانية على الحاسوب ونرى كيف انها تتعامل مع دخل المرضيه الخاصة بك يدويا tetris سيناريوهات!
معايره الوضع هو المرة الوحيدة التي يمكنك التلاعب التقاط الفيديو ومعالجة الصور القالب (4 * 2 الشبكه). يمكنك استخدام الماوس لتوجيه مستطيل ، ولكن بعد ذلك يمكنك استخدام مفاتيح المؤشر ( "حتى" ، و "لتسقط" ، و "اليسار" ، و "الحق" (ان يكون قد دفع غرامة السيطرة على الحدود -- باستخدام مفتاح اختيار Shift عكس الحدود للمستطيل (على سبيل المثال : "Shift اليسار" Combo مختلفة من "اليسار").

فيديو طريقة المعايره
8.13 التقاط الفيديو والاعتراف
الضغط على 'V' المسامير طريقة التقاط الفيديو. اذا ما احسن معايره (انظر "فيديو المعايره" في القسم السابق) ، وقطعة من شاشة الفيديو عن بعد وسوف استولي عليها وتصنيفها وكاميرات الفيديو و-- القطع وستكون ولدت في المباراة المحلية لA.I. للنظر والرد .
A.I. فان الناتج يجب ان تحال بعد ذلك (عن طريق واجهة RS-232 في التظاهره المذكورة في هذه المادة) إلى لعبة الناءيه المدخلات (على سبيل المثال : لوحة المفاتيح (لA.I. بنجاح ليلعب لعبة الناءيه.
في اي وقت اذا كان هذا الانزعاج هو حلقة مغلقة (على سبيل المثال : عطل التقاط الفيديو ، او اشارة عطل الانتاج) ، ثم A.I. ستضع انطباعا خاطئا للمركز بعد المباراة ، وA.I. سيجعل من القرارات غير المناسبه التي سرعان ما تفقد اللعبة .
(ملاحظه : يمكن التغلب على هذه المشكلة مع مبلغ متواضع من الجهد : A.I. الحاجة الى نظام كامل الا بعد دراسة tetris مستمرة للكشف عن "واقع التحقق" من مجلس الجامعة ، وA.I. النظام ينبغي ان تكون على استعداد لبعض الاوامر الى الناتج الفشل بطريقة ما.)

التقاط الفيديو والاعتراف
9. الأصل tetris تجربة منظمة العفو الدولية (2003)
التالية تبين اول عمل نسخة من tetris A.I. النظام في عام 2003.

كمبيوتر وكاميرات الفيديو التي تواجه # 1 سهل تسيير أي لعبة tetris

# 2 تشغيل الكمبيوتر القياسيه tetris البرمجيات في طريقه A.I.

اليسار : شبكة لمعايره رسم صورة الفيديو الاعتراف ؛
الحق : tetris قطعة الاعتراف الحالات.

الاطار من شريط فيديو tetris A.I. التجربه فى عام 2003
10. - قطعة واحدة افضل tetris - خوارزميه لعب فى العالم
10.1 Pierre Dellacherie (2003 ؛ فرنسا)
Pierre Dellacherie (2003 ؛ فرنسا) ، المطور من أفضل قطعة واحدة tetris - خوارزميه لعب فى العالم
أفضل قطعة واحدة ، في الوقت الحقيقي tetris خوارزميه على حد علمي تم انشاء Pierre Dellacherie من جانب فرنسا.
خوارزميه بلدة مذهله في بعض الاحيان تملأ اكثر من 2 مليون دولار الصفوف!
ويبلغ متوسط الأداء بناء على امر من 650000 من الصفوف.
الخوارزميه تأخذ الذاكرة قليلة جدا ، وتدير بسرعة عالية (حوالي 160 الصفوف في بلدي الثاني على 800 MHz الحاسوب).
اداء Pierre Dellacherie's خوارزميه :
بلدي النموذج الحالي لاداء tetris بنظم معلومات المحاسبه هو ان اي قطعة ليست في الحسبان لوجود احتمال أن المباراة ستنتهي ، p.
وهكذا ، فان احتمال ان قطعة لن تنهي اللعبة q=(1-p).
احتمال انهاء المباراة بعد k التحركات هي مجرد نتاج احتمال البقاء على قيد الحياة (k-1) التحركات ، وهي q^(k-1) ، واحتمال تنتهي من الخطوة التالية ، وهي p.
وهذا ما يطابق "Geometric Distribution" :
Geometric Distribution:
P(k) = p * [(1-p)^(k-1)] = p * [q^(k-1)] = p * exp[ln(q) * (k-1)]
MEAN: [1/p]
VARIANCE: [q/(p*p)]
STANDARD DEVIATION: sqrt( VARIANCE )
لp الصغيرة ، ln(q) تقريبا (-p) ، ولدينا ما يلي :
Exponential Distribution:
P(k) = p * exp[-p * (k-1)]
= p * exp[-p * k ] approximately
MEAN: [1/p]
VARIANCE: [1/(p*p)]
STANDARD DEVIATION: sqrt( VARIANCE )
ونحن نتوقع من جزء يسير من العدد الإجمالي للالعاب لعب لانهاء العمل مع عدد من الانتهاء من الصفوف في الفترة [k1, k2] الى :
Integral of the Exponential Distribution:
I(k1,k2) = exp[-p * k1] - exp[-p * k2]
36 بعد الانتهاء من الألعاب على جهاز الكمبيوتر الخاص بي ، على مدى يومين ، ووجدت في المتوسط 674827 تكتمل الصفوف.
ووفقا لنظرية عامة اعلاه ، فأنني اتوقع ان النسبيه التالية جزء من الالعاب للانتهاء من انجاز في صف النطاقات التالية :
p = (1/674827) = 0.000001482 = 1.482*10^(-6)
Completed Row Range Relative Fraction of Total Games
======================= =================================
0 ... 400 000 [exp( 0 )-exp(-0.59)] = 0.447
400 000 ... 800 000 [exp(-0.59)-exp(-1.19)] = 0.250
800 000 ... 1 200 000 [exp(-1.19)-exp(-1.78)] = 0.135
1 200 000 ... 1 600 000 [exp(-1.78)-exp(-2.37)] = 0.075
1 600 000 ... 2 000 000 [exp(-2.37)-exp(-2.96)] = 0.042
2 000 000 ... 2 400 000 [exp(-2.96)-exp(-3.55)] = 0.023
هنا هو الرسم البياني ان يقارن Exponential Distribution مع نظرية ولاحظ توزيع الألعاب.

اداء Pierre's خوارزميه انجزت اكثر من 36 العاب
ورغم وجود عدد قليل جدا من هذه الالعاب في مجموعة البيانات ، ومن الواضح أن هذا النموذج هو جيدة الى حد ما لاحظ التطابق في التوزيع.
Pierre's مقدمة لصاحب خوارزميه :
Pierre بدأت العمل على هذه القطعه واحدة في خوارزميه 2003،1.
Pierre ارسل لي عن طريق البريد الالكتروني ، حول دعوته على خوارزميه 2003.4.9 ، وتقديم التقارير التالية الاداء اكثر من 20 انتصارات متتالية :
Game 1 : 1 213 220 rows
Game 2 : 876 618 rows
Game 3 : 37 327 rows
Game 4 : 260 337 rows
Game 5 : 165 349 rows
Game 6 : 2 288 991 rows
Game 7 : 1 112 094 rows
Game 8 : 138 648 rows
Game 9 : 107 089 rows
Game 10 : 1 284 387 rows
Game 11 : 935 011 rows
Game 12 : 80 766 rows
Game 13 : 253 158 rows
Game 14 : 1 877 331 rows
Game 15 : 145 034 rows
Game 16 : 888 081 rows
Game 17 : 433 694 rows
Game 18 : 15 446 rows
Game 19 : 494 498 rows
Game 20 : 16 273 rows
Average is 631167 completed rows.
"الخوارزميه ينفذ في Turbo Pascal ويكمل الصفوف 7000 / دقيقة مع Athlon 1600+".
انا Pierre's خوارزميه تحول الى C++ في 2003،6 ، وبعد عدة عمليات تبادل البريد الألكتروني مع Pierre. علينا التحقق من أن A.I. في النسخه C++ وجهت نفس القرارات الصادرة عن Pascal نسخة.
وانني لاحظت اداء مشابه لصاحب التقرير الاصلي ؛ في المتوسط حوالي 650000 تكتمل الصفوف ، واستكمال بعض الالعاب 2 مليون دولار من الصفوف.
لا تصدق!
10.2 محادثة مع Pierre Dellacherie
[1] متى أول خلق هذا القانون؟
لقد عملت على خوارزميه اواخر كانون الثاني / يناير من عام 2003 حتى الآن.
[2] منذ متى وأنت تعمل عليه؟
عملت عليه كل اسبوع تقريبا... ولكن ليس كل يوم طويل لاني اريد ان انشطه اخرى : لسوء الحظ لقد لكسب المال مثل اي شخص آخر!
[3] ما اوحت تصميم المدونه؟
لعبت tetris 10 سنوات او 15 سنة قبل ولكنني لم تؤد دورا مرة اخرى لفترة طويلة. واود ان اقول اننى "متوسط" لاعب من القواعد ويعرف بعض الحيل.
ولكن وبعد ان بدأ العمل على خوارزميه انني لم تلعب كثيرا لانني وجدت بل كان اكثر فعالية لمشاهدة لعب الحاسوب وتحليل نقاط الضعف بلده.
[4] هل استخدام اي التشغيل الآلي "لتدريب" الشفره لاداء افضل؟ هل لديكم اي اقتراحات لتحسين الخوارزميه؟
او هل مجرد مشاهدة النتائج وتقرر ادخال تعديلات؟
انا من "المدرسة القديمة" : أنا مجرد شاهد النتائج وقررت ان تجعل ادخال تعديلات عليها.
"التلقاءيه التعلم" هو نوع من الفوقيه خوارزميه حتى انني لم يضمن ان تقوم بذلك على هذا النحو من شأنه ان يسهل الحصول على هذا النحو الفوقيه خوارزميه يجب ان يبنى ايضا وهذا ليس أمرا سهلا!
ما هو اكثر من ذلك ، انني اتفق مع Roger Penrose عندما يقول (في كتابه "Shadows of the mind") ان فهم الانسان وحدس لا يمكن ان يكون حسابي (على سبيل المثال : computable).
[5] متى يبدأ اللعب tetris الاولى ، وعندما لا يكون لديك فكرة حل tetris مع A.I.؟
أقوم بتدريس حسابي وبرمجة الحاسوب (Turbo Pascal وScilab) من تدريب للطلاب لامتحان القبول في الدراسات العليا المهندس مدارس.
في البداية ، "كمبيوتر يلعب Tetris" كانت فكرة أردت ان بلادي لوضع الطلبة فى العام القادم.
انني لم اكن على علم في صفحة الويب الخاصة بك عندما بدأت العمل على خوارزميه.
في الواقع كنت محظوظا ان يكون على علم في صفحة الويب الخاصة بك قبل بضعة اسابيع فقط لأنني اعتقد انني قد يثبط من النتائج الخاصة بك (كما قد تخمين ، في وقت مبكر من نسخ بلدي خوارزميه لا تلعب بشكل جيد!).
[6] ما هو الوضع الحالي؟
انا ما يقرب من 30] قبل 27 نيسان / ابريل 2003]. لقد العديد من الانشطه : أنا عازف الكمنجه ، ويؤلف الموسيقى وأنا أقوم بتدريس برمجة الكمبيوتر.
عندي لدرجة الماجستير في علوم الموسيقى (1994) و "Artificial Intelligence and Algorithmic" دبلوم (1998).
في فرنسا وهذا يتطابق مع دبلوم سنة الخامسة على مقاعد الدراسه في الجامعة (هي السنة الرابعة لدرجة الماجستير والسادس من السنة هو اطروحة).
Pierre's التراكيب :
[7] أين تعيش؟
انا والفرنسية وأعيش في روان (نورماندي).
[8] تعليقات اخرى :
في نهاية المطاف انني لم أي فكرة جديدة لتحسينها.
لقد حاولت الكثير من عديمة الفاءده) وسخيف (واشك في الاشياء التي يمكن تحسينها.
ومن ناحية أخرى ، اعتقد أن هناك ما قد يوجد من يختلف تماما عن الخوارزميات التي يمكن ان يكون لها اداء افضل.
من جانب الطريق ، اسرع فى اختبار اطلاق تتالف القطع في نصف مربع (10 x 10 صفوف الاعمده) : في نصف مربع ، يجعل بلادي خوارزميه في المتوسط 280 الانتهاء من الصفوف.
شيئا آخر : الخوارزميه يمكن بسهولة ان تغير مزدوج في رقائق خوارزميه ([سأفعل] الاختبارات قريبا).
انا احب الافلام والموسيقى : ان يصبح الفيلم المؤلف هو جزء من اهتمامي الرئيسي احلام (ولكن الحلم هو فقط!).
11. حقوق افضل لاعب في العالم
11.1 Tetris اليابانيه ماجستير (2001 27 كانون الثاني / يناير) فيديو

Tetris ماجستير (2001 ؛ اليابان) فيديو
Arika يعرض اليابانيه tetris نهائيات ماجستير (2001 27 كانون الثاني / يناير). "TETRIS THE ABSOLUTE PLUS --The Grandmaster2-- DEATH-MODE"
12. ملاحظات
12.1 Slashdot الخيط (2003)
وفي عام 2003 ، بلدي tetris A.I. المشروع تمت مناقشتها على الانترنت Slashdot المنتدى (
http://slashdot.org).
Benefactor of mankind--thank you! (Score:4, Funny)
by EnlightenmentFan (617608) on Tuesday January 28, @02:29PM
(#5176294)
(http://betsydevine.weblogger.com/ | Last Journal: Tuesday
January 21, @01:55PM)
Now I can set up computer #1 to play an infinite, obsessive
game of Tetris on computer #2, leaving me free at last to sit
down at computer #3 and get some work done. The $200 for
webcam and other hardware is cheap for an invention like this,
with the revolutionary potential of the wheel, or fire, or
even pizza delivery.
Thank you! Thank you! Thank you!
[ Reply to This ]
The New 4th law... (Score:5, Funny)
by gokubi (413425) on Tuesday January 28, @02:09PM (#5176135)
(http://www.gokubi.com/kinggeorge)
1. A robot may not injure a human being, or, through inaction,
allow a human being to come to harm.
2. A robot must obey the orders given it by human beings
except where such orders would conflict with the First Law.
3. A robot must protect its own existence as long as such
protection does not conflict with the First or Second Law.
4. A robot must never place the long skinny ones horizontally,
unless it leads to a long skinny vertical hole so 4 rows can
be cleared at once the next time a long skinny one comes
around.
[ Reply to This ]
Re:The New 4th law... (Score:5, Funny)
by GuyMannDude (574364) on Tuesday January 28,
@02:14PM (#5176179)
I thought Directive 4 was that any attempt to arrest a
senior officer of OCP Corporation would result in
immediate shutdown!
GMD
[ Reply to This | Parent ]

هزليه مستوحاة من بلادي tetris A.I. المشروع (2003) (وللمرة الاولى قمت من اي وقت مضى من وحي فكاهي!)

هزليه مستوحاة من بلادي tetris A.I. المشروع (2003) (مرة الثانية قمت من اي وقت مضى من وحي فكاهي!)
13. التاريخ من المشروع tetris A.I.
في ربيع 1989 كنت مشغول الطفر) وعدم (الفصل الدراسي الثاني - الجدد في صفوف University of Pennsylvania.
بلدي واحد من الغرفة ، Bill Matthews ، كان Mac Classic ، في بعض الاحيان ولعب العاب الفيديو.
الناس من الحصول على واعترف Ivy League المدارس وعادة ما تميل الى التنافس مع غيره من الناس في جميع الاوقات -- Bill ذلك عندما حصل على لعبة tetris بلدة Mac ، ونحن على الفور بدأت المعركه على المدى الطويل لارتفاع درجة.
كما تسلق عشرات ، فإن الوقت اللازم لاستثمار صغير كسب زيادة هاءله.
لجعل قصة طويلة وباختصار ، يفترض ان يعقد Bill ارتفاع درجة بيننا ، ولكن اعتقد له باستخدام ResEdit وتقطيع ملف النتيجة!
Bill قد الطبقات Wharton في كلية الأعمال التجارية ، alma mater من Michael Milken وDonald Trump ، لذا فإنه ليس من المستبعد ان اي شخص ملفقه ارتفاع درجة مستحيلا...
في صيف عام 1990 ا لى ان اقترض من وجهة نظري 30 MHz Intel 80386 IBM PC شريك الغرفة ، Alex Haidas.
اشتريت لوحة المفاتيح Mac في سوق البرغوث 1 دولار.
أنا بني موازية لداءره الموانئ PC السماح للسيطره على Mac لوحة المفاتيح.
(ط أ CMOS 4040 رقاقة تستخدم ليكون بمثابة نوع من الحاله الصلبه التقويه للانضمام الى لوحة المفاتيح الاتصالات داخل Mac لوحة المفاتيح.)
كتبت في برنامج كمبيوتر ان يستخدم شجرة اتخاذ القرارات كما استراتيجيتها للعب اللعبة tetris. في بضعة اسابيع فقط كان لي PC تلعب لعبة tetris بالظهور على Mac.
ومع ذلك ، كان المطلوب الاول على استخدام لوحة المفاتيح PC ان نقول للA.I. عن كل قطعة والتي تقع على الشاشه.
وبدأت العمل على الدائرة باستخدام CdS (Cadmium Sulfide) ضوء الكاشفات التي من شأنها ان الهزيل ضد Mac الشاشه و "انظر" التي تقع في القطع ، ولكن كان رد فعل اجهزة الاستشعار CdS ببطء شديد الى تغييرات في السطوع ، والتناقض بين tetris قطعة الخلفية وعلى الشاشه Mac Classic كان منخفضا للغاية على نحو موثوق به تميز.
في تلك الأيام لم يكن لدى الكثير من المال ، ولذلك فمن الخطر جدا لشراء بمبلغ 2 Radio Shack phototransistor التي قد لا تفعل ما أردت.
ايضا ، بالنظر الى النقيض من هذه المشكلة ، وانا متشائم النهج كله.
عندما اشتريت أول حاسوب شخصي في عام 1996 ، لم استطع في اطار برامج Windows 95 على القيام 100 MHz CPU معالجة الفيديو سريعه بما يكفي لجعل مجرد رؤية نظام العمل.
لقد كتبت ومعالجة الصور المدونه في اللغة الجمعية ، ولكن كان هناك الكثير من النفقات العامة قبل قانون بلدي الفيديو البيانات الواردة في الواقع انه يبدو من المستحيل ان نفعل شيئا جديرا بالاهتمام.
في عام 2003 ، والتكنولوجيا ، ولا سيما CPU السرعه ، قد وصلت الى مستوى ان تقدم ما يقرب من الانتهاء من المشروع تافهه.
حتى انني في حفر بلادي القديمة الشخصيه ، وأخيرا الانتهاء من المشروع ، بمعنى الحصول على بعض من الاغلاق.
وكان من المثير جدا ان نرى جهاز كمبيوتر واحد لعب جهاز كمبيوتر اخر عن طريق كاميرا فيديو USB والتبديلات.
الصوت من التبديلات النقر ، ومشاهدة القطع وانخفاض في حركة دوران سخيفه ، بسرعة فوق طاقة البشر ، وتقدم تجربة مرضية جدا في طريقة multisensory.
وفي عام 2003 ، كان عملي التي تعترف بها Slashdot (
http://slashdot.org) ، وتلقيت الكثير من التعليقات كبيرة.
وقد دعيت للظهور على "Screen Savers" عرض على التلفزيون TechTV شبكة التلفزيون الرقمي.
ذهبت الى سان فرانسيسكو ، ويبدو أنه عرض علي ، وخبرة كبيرة.
في وقت لاحق من 2003 ، تلقيت رسالة من Henk Rogers ، على دعوته لي الى هاواي لقائه وAlexey Pajitnov الى الحديث عن اقامة نوع من معيار لtetris ، لاغراض بعد tetris البطولات.
وكان أحد اهتماما خاصا لتمكين اللاعبين استخدام الهواتف النقاله على "التنافس مع بعضها البعض" ، غير مباشرة ، عن طريق A.I. ان يقلد اللاعبين (قبل التحليل من جانب كل لاعب من اجراءات) ، وبذلك يتم تجنب آثار الهاتف المحمول الوصول الى الانترنت الكمون ، وتمكين اللاعبين "منافسة" * افضل اللاعبين في العالم (*...، او بالاحرى تقليد A.I. جدا افضل اللاعبين في العالم).
كنت thrilled من احتمال اجتماع خالق tetris. ولسوء الحظ ، وحلقت يجعلني حريصة ، وانا رفضت الدعوة.
في عام 2006 ، حولت بلادي "ستاندارد tetris" C++ من البرمجيات الى C# لجعل البرامج اكثر ميسورة ومفيدة للمبرمجين المعاصرة.