نمایش نتایج 1 تا 36 از 36

نام تاپیک: خلق یک دنیای مجازی

  1. #1
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    28
    پست
    1,545

    خلق یک دنیای مجازی

    سلام دوستان!
    یه ایده ای به ذهنم رسیده:
    یک پروسس God طراحی می کنیم که کار این پروسس اینه که داخل یه پوشه به نام World، هی فایل exe. تولید کنه و اجرا کنه. این فایل های exe. محتویات کاملا رندومی دارند. ضمنا بعد از مدت مشخصی از عمر هر فایل exe ای، برنامه اش بسته می شه. قبول دارید که با توجه به نظریه ی تکامل باید این جا یه زندگی به وجود بیاد؟!

  2. #2
    VIP آواتار xxxxx_xxxxx
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    X place
    سن
    34
    پست
    4,768

    نقل قول: خلق یک دنیای مجازی

    سلام،
    God و تکامل! نمیشه. یا خلقت. یا تکامل.
    چرا باید توی فولدر World زندگی و تکامل به وجود بیاد؟ مگر ایجاد محتویات فایل ها بر اساس قوانین تکامل هست که زندگی به وجود بیاد؟
    گفتید محتویات رندوم. اما تکامل بر حسب شانس و تصادف نیست. این اشتباهی هست که خیلی ها می کنند. تکامل قوانین خودش رو داره. هیچ چیزی در تکامل به جز جهش ژنی (Mutation) شانسی نیست. که تازه همینش هم به خاطر نقص علم ماست که میگیم شانسی و تصادفی هست، وگرنه تکامل هیچ سنخیتی با تصادف و شانس نداره. تکامل قوانین خودش رو داره.

    متشکرم
    الگوریتم هایی که تاریخچه خود را فراموش می کنند، محکوم به تکرار آن هستند.

  3. #3
    کاربر دائمی آواتار shahmohammadi
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    کلیبر
    پست
    475

    نقل قول: خلق یک دنیای مجازی

    نقل قول نوشته شده توسط xxxxx_xxxxx مشاهده تاپیک
    سلام،
    God و تکامل! نمیشه. یا خلقت. یا تکامل.
    چرا باید توی فولدر World زندگی و تکامل به وجود بیاد؟ مگر ایجاد محتویات فایل ها بر اساس قوانین تکامل هست که زندگی به وجود بیاد؟
    گفتید محتویات رندوم. اما تکامل بر حسب شانس و تصادف نیست. این اشتباهی هست که خیلی ها می کنند. تکامل قوانین خودش رو داره. هیچ چیزی در تکامل به جز جهش ژنی (Mutation) شانسی نیست. که تازه همینش هم به خاطر نقص علم ماست که میگیم شانسی و تصادفی هست، وگرنه تکامل هیچ سنخیتی با تصادف و شانس نداره. تکامل قوانین خودش رو داره.

    متشکرم
    با سلام. بله علت جهش در تكامل حتما كه شانس نيست و موضوع پيچيده اي بايد باشه.
    در ضمن در همين برنامه هايي كه از طريق تكامل مساله رو حل مي كنند بالاخره كه اولش يه برنامه نويس اينهاي رو نوشته (خلق كرده) و اين كد ها همين طوري نوشته نشده اند.

  4. #4
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    28
    پست
    1,545

    نقل قول: خلق یک دنیای مجازی

    سلام!
    خیلی ممنون از پاسخ هاتون، دقیقا گرفتم چی می گید، اما شاید منظورم رو بد رسوندم، من نمی گم این کار مستقیما باعث ایجاد حیات و ... می شه؛ منظورم از تکامل این جای کار نیست. قطعا سال ها و سال ها طول کشیده که اصلا شرایطی ایجاد بشه که موجودات زنده (از نظر من موجوداتی که عین خودشون رو به وجود می آرن یا پروسس هایی که عین خودشون رو...(ساختار سازمان یافته ی سلولی و کربنی و ... وسیله ای برای داشتن این ویژگیه وگرنه خودش ویژگی موجودات زنده نیست ...)) بتونن به وجود بیان و قوانین تکامل بتونن کار کنن. شاید بار ها و بار ها موجوداتی (پروسس هایی) به وجود بیان ولی مثل خودشون رو ایجاد نکنن (پس زنده نیستن (حداقل بعد از مدتی!)) . اصلا چرا باید یک راست موجود زنده به وجود بیاد. شاید پروسس دیگه ای به وجود بیاد که قوانین تکامل رو اجرا می کنه. شاید پروسس هایی که به وجود می آن خودشون اون موجودات زنده نباشن و زندگی در سطحی پایین تر به وجود بیاد. مثلا اون ها یه پوشه ی جدید بسازن به اسم World. (شاید هم نه) در کل می گم اگه قرار باشه زندگی به وجود بیاد بالاخره به وجود می آد. بدون این که God.exe با قوانین پیچیده ای زندگی رو به وجود بیاره. اصلا شاید (اگر زمان محدود نباشه : قطعا) God.exe برنامه ای رو بسازه که اون قوانین پیچیده رو پیاده کنه. حتی اگه God.exe ندونه (نمی دونه) چی می سازه. شاید یه برنامه ای مثل خودش رو بسازه. هزاران شاید هست. که بالاخره همه اتفاق می افتن. اگر God.exe ی ما کار نکنه و Project1.exe ی یه برنامه نویس دیگه که از همه چی سر در می آره کار کنه، God.exe شانس این رو داره که Project1.exe رو بسازه. (اگر زمان کم نباشه و خیلی خیلی خیلی... زیاد باشه حتما.) اگه Takamol.exe کار می کنه، God.exe بالاخره اون رو می سازه. این God.exe همون God مهربون و حکیم و ... نیست. شاید RealGod.exe رو بسازه که این ویژگی ها رو داشته باشه. ما از قوانین تکامل سر در نمی آریم (اصلا فرض کنیم تا حالا هیچی در موردش نشنیدیم)، اگر کار می کنن، بالاخره یه روزی اجرا می شن که کار کنن.
    اصلا بی خیال، فرض کنید یه برنامه ی آرمانی BestWordCreator.exe هست که بهترین شبیه سازی حیات رو انجام می ده. God.exe می تونه این برنامه رو بسازه. اصلا شاید بگید اون برنامه ی آرمانی بغلش یه سری DLL داره و God.exe فقط exe تولید می کنه، تکلیف اون DLL ها چی می شه؟! من می گم God.exe می تونه برنامه BestWorldCreatorSetup.exe رو بسازه. منظورم این طوری بود؛ آیا این طوری حیات به وجود نمی آد؟! ببینید ابر کامپیوتر های عقیم ساخته می شه، اما قوطی حلبی هایی که تولید مثل کنن رو نمی دونم. خوب ما سختمونه یه همچین وسیله ی فیزیکی ای رو بسازیم، ولی کار نرم افزاری آسون تره. این جا رو هم ببینید شاید فکرم رو بهتر درک کنید : Infinite Monkey Theorem

  5. #5
    کاربر دائمی آواتار shahmohammadi
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    کلیبر
    پست
    475

    نقل قول: خلق یک دنیای مجازی

    متوجه شدم چه چيزي مي خواهيد بسازيد.
    يعني يه برنامه اي بسازيم كه مدام يه تعداد فايل اجرايي بسازه كه كد هاشون رو توشون تصادفي قرار بده و اين ها رو اجرا كنه.
    و بعد كه اين فايل ها اجرا بشند در بهترين حالت (حالت آرماني) با هم تكامل داشته باشند. و يا يك خالق آرماني باشند كه فايل هايي رو توليد كنه كه با هم اين تكامل رو دارند. (و در ضمن مي تونند فايل هاي اجرايي ديگري مثل همين word و paint و يا يك ويروس و .. هم باشند)
    با اين حساب يه برنامه اي رو مي خواهيم بسازيم كه فقط بي نهايت بار اجرا مي شه (مثل قضيه بينهايت ميمون) و كارش فقط اينه كه فايل هاي اجرايي نامشخص ديگري رو توليد كنه.
    نمي خواهم كه به كارتون ايراد گرفته باشم (كه التبه ايده ي خوبي هم هست) ولي اين كار (بنا به قضيه، بي نهايت بار اجزا شدن) فكر مي كنم از عهده نرم افزار هم برنياد (همون طور كه از عهده جهان فيزيكي برنمي آد) و فقط از عهده عالم رياضيات بر مي آد كه بنا به اين لينك مي شه بي نهايت ميمون در نظر گرفت. چرا كه اين قضيه براي حالتي اثبات شده كه بينهايت بار اين اتفاق بيفته.

  6. #6
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    28
    پست
    1,545

    نقل قول: خلق یک دنیای مجازی

    خیلی ممنون از پاسختون.
    مثلا یه برنامه ی Hello World در 2 کیلو بایت (یعنی 16192 بیت) نوشته می شه. کلا برنامه های 2 کیلو بایتی، 2 به توان 16192 حالت دارن. که با دادن زمان کافی (بهتره نگیم بی نهایت)، ساخته می شن. حالا شما فرض کن این برنامه ی 2 کیلوبایتی موجود زنده ای باشه که گفتم.(مثال)

  7. #7
    کاربر دائمی آواتار shahmohammadi
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    کلیبر
    پست
    475

    نقل قول: خلق یک دنیای مجازی

    خوبه.
    2 به توان 16192 مي شه يك عدد 4874 رقمي. هاردي كه بايد استفاده شه تا اين همه فايل 2 كيلويي رو ذخيره كنه مي دونيد كه بايد چه قدرظرفيت داشته باشه.
    حالا ممكنه بگيد كه نوبتي فايل ها رو مي سازيم و بعد از اين كه يه فايلي اجرا شد اونو پاكش مي كنيم. خوب اين هم يعني زمان برنامه كلي بالا بره. كه تازه زمان برنامه خودش همين طوري به چند هزار قرن (بيشترين عددي كه بلدم) مي رسه.

    اگه از لحاظ رياضي به اين مساله توجه كنيم و ببينيم كه آيا در چند هزار قرن آينده احتمال داره كه حيات (به صورت نرم افزاري) به وجود بياد يا نه باز به يه چيزي مي رسيم.

  8. #8
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    28
    پست
    1,545

    نقل قول: خلق یک دنیای مجازی

    خوب مثلا ما 100 گیگابایت فضا داریم. این قدر فایل می سازیم تا این که پر می شه این فضا، بعد مجبور می شیم قدیمی ترین فایل ها رو حذف کنیم و فایل جدید رو بذاریم جاش.
    یه مسئله ی دیگه هم هست. این که فایل های ما خیلی هاشون اصلا کار نمی کنن و چرت و پرت هستن. که این خیلی وقت رو تلف می کنه. بهتره یه ساختار اجرایی جدید (به جای فایل exe) طراحی کنیم، که هر چرت و پرتی براش یه معنایی برای اجرا داشته باشه. این طوری کار بهتر پیش می ره.
    ضمنا حتی اگه بشینیم اون 2 به توان 16192 فایل رو تولید کنیم، احتمال این که Hello World به وجود بیاد به درصد 100 تقسیم بر 2 به توان 16192 هست! البته اگه کار رو ادامه بدیم این احتمال بالاتر می ره. اما بهتره با فایل های exe این کارو نکنیم، چون درصد زیادی از این فایل ها هیچ اجرا هم نمی شن! اما اگه یه ساختار اجرایی متفاوت درست کنیم با یه محیط اجرای متفاوت فکر می کنم جالب تر باشه... طوری که تعداد زیادی از کد های ساخته شده ی Random مون حداقل یه کاری بکنن...

  9. #9
    کاربر دائمی آواتار shahmohammadi
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    کلیبر
    پست
    475

    نقل قول: خلق یک دنیای مجازی

    مثلا اين چطوره:
    يك برنامه با يك تابع مين كه فقط بلده يه تابعي رو صدا كنه:
    int main()
    {
    func();
    return 0;
    }

    برنامه اصلي بايداين برنامه رو بسازه. منتها در هر قدم فقط تابع مورد نظر رو به صورت تصادفي درست كنه.
    براي اول كار چطوره؟

  10. #10
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    28
    پست
    1,545

    نقل قول: خلق یک دنیای مجازی

    اگه می شه یه کم توضیح بدید...

  11. #11
    کاربر دائمی آواتار shahmohammadi
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    کلیبر
    پست
    475

    نقل قول: خلق یک دنیای مجازی

    مثلا فرض كنيم كه تابع func اندازش در فايل 500 بايت هست. پس func رو به صورت زير تعريف كنيم:
     void func()
    {
    __asm{
    NOP
    NOP
    ...
    NOP
    }
    }

    با استفاده از nop ها 500 بايت رو براي اين تابع در فايل باز كنيم.
    بعدش برنامه مون يك كپي هايي از فايل بزنه و در هر بار توي اين 500 بايت مقادير متفاوت و تصادفي رو بنويسه.

  12. #12
    کاربر دائمی آواتار shahmohammadi
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    کلیبر
    پست
    475

    نقل قول: خلق یک دنیای مجازی

    (چند ثانيه اختلاف در فرستادن پست. 2:27)
    نقل قول نوشته شده توسط IamOverlord مشاهده تاپیک
    اگه می شه یه کم توضیح بدید...
    خوب از اول توضيح ميدم:
    يك برنامه مي نويسم به اسم prog1.exe.
    به اين صورت كه اين برنامه يك تابع مين داره. و يك تابع func رو كه 500 بايت هست رو فراخواني مي كنه. در prog1 اين تابع شامي 500 بايت nop هست.

    حالا برنامه اي داريم به اسم creator كه توي اين برنامه گپي هاي مختلفي از prog1.exe رو مي زنيم. و در هر كپي اون 500 بايت رو به طور تصادفي تغيير مي ديم.
    همون طور كه مي دونيم هر برنامه اي مثل hello world رو كه كد هاش در داخل مين هستند رو ميشه در داخل يه تابع ديگه نوشت كه مين اون تابع رو فراخواني كرده.

  13. #13
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    28
    پست
    1,545

    نقل قول: خلق یک دنیای مجازی

    خوب عالیه اما برنامه ی ما exe ی 32 بیتی باشه، یا 16 بیتی، چه کارهایی بتونه بکنه؟ مثلا اگه بخواد با یه Process دیگه ارتباط برقرار کنه از طریق API باشه؟ یا مثلا می تونه سیستم رو Restart کنه؟ یا فایل هامونو پاک کنه؟! این جور مسائل چی؟!

  14. #14
    کاربر دائمی آواتار shahmohammadi
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    کلیبر
    پست
    475

    نقل قول: خلق یک دنیای مجازی

    اگر هر كدوم از مواردي رو كه گفتيد رو از قبل به صورت تابع بنويسيم و در كتابخونه اي جمع كنيم. و برنامه مون مثل فايل ها ي اجرايي ويژوال بيسيك مدام فراخواني هايي از اون كتابخونه باشه به نظرم امن تر مي شه. البته اين نظر منه و ممكنه كه درست هم نباشه.
    در مورد اينكه چه امكاناتي بهش بديم بهتره ببينيم كه حالت آرمانيمون تا كجا بايد پيش بره و از چه امكاناتي بايد استفاده كنه.

  15. دوشنبه 22 اسفند 1390, 09:02 صبح

    دلیل
    تکراری

  16. #15
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    28
    پست
    1,545

    نقل قول: خلق یک دنیای مجازی

    خوب این به ذهنم نرسیده بود خیلی عالیه... باید توابع تا جای ممکن کار های ساده انجام بشن و کاری های پیچیده خود به خود تولید بشن.
    ولی یه مسئله ای. این فراخوانی ها چه جوری باشن؟ مثلا اگه ما نام توابع رو به طور رندوم تولید کنه برای فایل، احتمال ایجاد نام درستی که تابعش وجود داره خیلی کمه. باید طوری باشه که هر رشته ی رندومی یه معنایی داشته باشه و مجموعه ای از دستورالعمل ها رو حتما اجرا کنه. جوری نباشه که اکثر رشته های رندوم بی معنی و زائد باشن... برای این مسئله راهی به ذهنتون می رسه...؟!

  17. #16
    کاربر دائمی آواتار shahmohammadi
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    کلیبر
    پست
    475

    نقل قول: خلق یک دنیای مجازی

    نام تمام توابع رو به صورت f0001 و f0002 و... بنويسم تا وقتي رندوم توليد مي شند معني دار باشند.
    در مورد حلقه ها و كنترل هاي شرطي هنوز كاري نكرديم.

  18. #17
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    28
    پست
    1,545

    نقل قول: خلق یک دنیای مجازی

    خوب با این حساب از خود ساختار زبان ماشین تقلید کنیم، به نظرم بهتر باشه.

  19. #18
    کاربر دائمی آواتار shahmohammadi
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    کلیبر
    پست
    475

    نقل قول: خلق یک دنیای مجازی

    نقل قول نوشته شده توسط IamOverlord مشاهده تاپیک
    خوب با این حساب از خود ساختار زبان ماشین تقلید کنیم، به نظرم بهتر باشه.
    يعني كلا بي خيال توابع كتابخونه ايمون بشيم؟

    به نظرتون مي شه كه اين عبارت هاي كنترلي رو هم به صورت يه تابع پياده سازي كرد؟

  20. #19
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    28
    پست
    1,545

    نقل قول: خلق یک دنیای مجازی

    نه منظورم اینه که اگه می خوایم توابع با شماره باشن و حلقه و از این جور چیزا هم داشته باشیم، اما نه به صورت سطح بالا، گفتم ساختار مورد نظرمون، همون زبان ماشین هست. چون فراخوانی ها با Call هست که یه عدد می گیره، متغیر ها هم عدد می گیرن، مقایسه ها هم نتیجه شون با اعداد Flag ها می شه، یا پرش ها هم تغییر عدد هستن. خوب همین مناسبه برا کارمون دیگه... ولی می گم به جای فایل exe.، فایل com. تولید کنیم؟ می شه به نظرتون؟

  21. #20
    کاربر دائمی آواتار shahmohammadi
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    کلیبر
    پست
    475

    نقل قول: خلق یک دنیای مجازی

    ميشه توليد كرد. ولي چرا؟

  22. #21
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    28
    پست
    1,545

    نقل قول: خلق یک دنیای مجازی

    چون ما نمی خوایم موجوداتمون 3D Max یا Photoshop باشن! خیلی هم ساده با هم ارتباط برقرار کنن می شه. بدون این که لازم باشه API استفاده کنن یا کارای دیگه بکنن...

  23. #22
    کاربر دائمی آواتار shahmohammadi
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    کلیبر
    پست
    475

    نقل قول: خلق یک دنیای مجازی

    يه فكري هم براي متغير ها و رشته ها بايد كرد.

  24. #23
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    28
    پست
    1,545

    نقل قول: خلق یک دنیای مجازی

    اگه فایل com. بخوایم تولید کنیم، متغیر ها و رشته ها قاطی کد هستن و با آدرسشون قابل دسترسی هستن. اما مسئله ارتباط 2 تا فایل com. هست، این خیلی پیچیده می شه برای دو برنامه؟! ما می خوایم این کارا سریع تر باشه. هر چه قدر فکر تعداد حالت های کار و احتمالات می افتم بیش تر دیوونه می شم! آخه ما چه قدر باید صبر کنیم که یه فایلی مثل آدم زندگی کنه...!

  25. #24
    کاربر دائمی آواتار shahmohammadi
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    کلیبر
    پست
    475

    نقل قول: خلق یک دنیای مجازی

    وقتي فايل creator نسل اول فايل ها رو توليد كرد، نام هاشون طوري باشند كه بشه فهميد نسل اولند. بعد اينها بتونند با نام هايي كه مشخصه ارتباط برقرار كنند. و وقتي دو تا فايل نسل اولي فايل جديدي رو ساختند اين فايل جديد از روي اسمش بشه فهميد كه نسل دوم هست. بنابراين بتونه راحت فايل هاي هم نسلش رو پيدا كنه.

  26. #25
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    28
    پست
    1,545

    نقل قول: خلق یک دنیای مجازی

    وقتی قراره یه فایلی یه فایلیو بسازه خودش نام اون رو تعیین می کنه، پس ما قراره تا حدودی دخالت داشته باشیم؟

  27. #26
    کاربر دائمی آواتار shahmohammadi
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    کلیبر
    پست
    475

    نقل قول: خلق یک دنیای مجازی

    ساختن يه فايل از طريق تابعي خواهد بود كه در كتابخونه مون هست. شرايطش رو هم اونجا مي نويسيم. بله به طور غير مستقيم و از اين طريق دخالت كرديم.

  28. #27
    کاربر دائمی آواتار shahmohammadi
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    کلیبر
    پست
    475

    نقل قول: خلق یک دنیای مجازی

    راستي به جاي استفاده از روش پست 24 و 26 مي تونيم در اين مورد دخالت هم نكنيم. به اين صورت كه فرايند توليد فايل جديد در داخل يك حلقه مثلا1000 تايي صورت بگيره و بالاخره يكي از اينها ممكنه موفق باشه. همونطور كه در زندگي طبيعي هم اين اتفاق مي افته و از بين هزاران سلول كياهي يا جانوري فقط تعداد كمي به مرحله بلوغ مي رسند. اين طوري با وجود اينكه ما دخالتي نكرديم ولي ممكنه به نتيجه برسه.

  29. #28
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    28
    پست
    1,545

    نقل قول: خلق یک دنیای مجازی

    اگه دخالت نکنیم که باید چند هزار سال بگذره تا یه چیزی از آب در بیاد! اما اگه دخالت کنیم ...
    ببینید این رو می پسندید که God.exe در یه حلقه ی Loop بی نهایت یه سری فایل رندوم در پوشه ی Universe تولید کنه (Body01 ، Body02 ، ...)، بعد در عین حال Ghost.exe ، اون Body ها رو یکی یکی کنترل کنه. هر Body شامل یه سری اطلاعات هست که نحوه ی اجرای اون رو توسط Ghost.exe مشخص می کنه. و Body مستقیما کاری نمی کنه، بلکه از Ghost.exe می خواد. یعنی یه عالمه فایل exe. تولید نکنیم، بلکه یه عالمه Body تولید کنیم که Ghost.exe دونه دونه شون رو رسیدگی می کنه...

  30. #29
    کاربر دائمی آواتار Cancer
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    <include <Cancer.h#
    پست
    135

    نقل قول: خلق یک دنیای مجازی

    سلام سلام سلام.
    ببخشید وسط بحثتون. ولی:
    راستش با عنوان تاپیک خیلی حال کردم.
    یه دنیای مجازی؟ یعنی یه چیزی تو مایه های ماتریکس؟ (یعنی فقط می خواین واقعیت رو بسازین؟)
    یکم زود نیست که بحث عملیش رو شروع کردین؟
    یعنی منظورم اینکه از حالت تئوریش به نتیجه رسیدین؟ یعنی واقعاً چند درصد احتمال داره که چنین چیزی حالا نمی خوام بگم که پس از مدت زمان قابل محاسبه ای، (اصلاً شما فکر کن که تا یه روز مونده به پایان دنیا) به جواب می رسه؟ اصلاً کلاً به جواب می رسه یا نه؟ چرا باید به جواب برسه؟ چرا نباید به جواب برسه؟
    ولی در کل ایده جالبی بود. دمت گرم.

  31. #30
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    28
    پست
    1,545

    نقل قول: خلق یک دنیای مجازی

    سلام.
    از لحاظ تئوری به نظرم قطعا اگر زمان کافی داشته باشیم شاید همون مقدار که برای به وجود اومدن حیات در دنیا لازم بود!!!، موجودات هوشمند به وجود میان. ولی در مورد اختیار و روح و از این مسائل: می شه فکر کرد که روح های واقعی از طریق پورت USB به سیستم وصل شدن :دی
    ضمنا اون ایده اصلیه که قطعا به زمان خیلی خیلی خیلی ... زیادی نیاز داره. به خاطر همون دلایلی که مطرح شد. اما اگه یه دستی تو کار ببریم شاید یه حالی بکنیم!

  32. #31
    کاربر دائمی آواتار shahmohammadi
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    کلیبر
    پست
    475

    نقل قول: خلق یک دنیای مجازی

    با سلام.
    به نظرم به جاي كام بهتره از همون exe استفاده كنيم. به اين دليل كه اگه مساله ساده بودن هست كه فايل هاي exe رو هم مي تونيم ساده بنويسيم. به علاوه با فايل هاي كام نمي تونيم توابعمون رو فرا خواني كنيم.

    خوبه توابعمون رو در يك دي ال ال قرار بديم و با دستورات call در فايل اجرايي exe فراخواني شون كنيم.

  33. #32
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    28
    پست
    1,545

    نقل قول: خلق یک دنیای مجازی

    من هم با همون ایده ی شما موافقم، فقط گفتم Ghost.exe رو به جای DLL بذاریم و Body ها رو به جای exe ها، چون ساختار فایل های exe اون قدری پیچیده هست که با تولید محتویات رندوم تقریبا نشه فایل سالم تولید کرد...

  34. #33
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    28
    پست
    1,545

    نقل قول: خلق یک دنیای مجازی

    می گم قبل از عمل بیاید به طور کاملا دقیق احتمالات رو محاسبه کنیم...

  35. #34

    نقل قول: خلق یک دنیای مجازی

    سلام.
    چند تا مطلب هم من اضافه کنم:
    تکامل مخصوصا در جهش های ژنی کاملا وابسته به شانس هست.
    حتی در سطوح زیراتمی می تونید درباره تونل زنی مطالعه کنید و ببینید که اونجا زندگی ذرات چطوره. پس "تصادف نداریم" نداریم!
    دیگه اینکه اگر hello world بشه 2 کیلو بایت ، با تمام سرآیند ها و ارجاع ها می شه اونقدر.
    بلکه کدهای اجرایی اون 10 تا 20 بایته.
    دیگه اینکه صد در صد بسیار زود تر از طبیعت به نتایج جالب می رسیم. قدرت پردازش طبیعت خیلی کنده.
    یادم که یه برنامه در این خصوص دیده بودم که چند تا باکتری خلق می کردید و میگذاشتید برا خودشون زندگی کنند، بعد از مدتی نتایج جالبی بدست می اومد.
    اما در هر حال فکر می کنم که ایده کلاس خیلی ایده شبیه ای هست.
    یک بار یک شی از کلاس پایه ایجاد می کنید که در محیط شبیه سازی شده زندگی می کنه.
    این کلاس می تونه نر و ماده باشه یا نباشه.
    صفاتی رو بهش منتسب می کنید و باقی ماجرا.
    اما نکته مهمش قسمت "دارای متد های جدید" شدن هست.
    مثلا موجود اول فقط یک متد داره اما شی n ام از نسل همون موجود ممکنه 2 تا متد داشته باشه و متد به ارث برده شده هم تغییر می کنه.
    انتخاب طبیعی خوب هست.
    می شه رندوم گرفت..
    توابع تبدیل تاریخ با دقت 5000 سال
    پذیرش پروژه، کامپوننت، آموزش برنامه نویسی (دلفی، اس کیو ال، ..) -> 09123780840

    دوستای گلم حمایت کنید : https://cafebazaar.ir/app/com.nikanmehr.marmarxword/


    نرم افزار پخش مویرگی

  36. #35
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    28
    پست
    1,545

    نقل قول: خلق یک دنیای مجازی

    سلام دوستان!
    ...یادش به خیر!
    امروز این مطالب رو دیدم، با توجه به موضوع تاپیک این رو می ذارم، فکر کنم براتون جالب باشه!:
    http://en.wikipedia.org/wiki/Gene_ex...on_programming
    http://en.wikipedia.org/wiki/Genetic_programming
    آخرین ویرایش به وسیله IamOverlord : یک شنبه 05 مرداد 1393 در 13:57 عصر

  37. #36
    کاربر دائمی آواتار abbas.oveissi
    تاریخ عضویت
    دی 1389
    محل زندگی
    تهران
    پست
    578

    نقل قول: خلق یک دنیای مجازی

    نقل قول نوشته شده توسط IamOverlord مشاهده تاپیک
    سلام دوستان!
    ...یادش به خیر!
    امروز این مطالب رو دیدم، با توجه به موضوع تاپیک این رو می ذارم، فکر کنم براتون جالب باشه!:
    http://en.wikipedia.org/wiki/Gene_ex...on_programming
    http://en.wikipedia.org/wiki/Genetic_programming
    چه جالب ، تازه این تاپیک رو دیدم.من یک زمانی به این قضیه فکر میکردم البته فکر میکردم که اینقدر خنده دار هست که کسی دنبالش نباشه و هیچ وقت به کسی نگفتم همیشه بهش فکر میکردم همچین چیزی درست کنم و بذارم مثلا چند هفته اجرا باشه ، ببینم بعدش چی میشه

    الگوریتم ژنتیک دقیقا بخش تکامل رو اجرا میکنه،من بعد اینکه یاد گرفتمش به قدرت خدا پی بردم واقعا جالبه که با دو عمل Mutation و Cross Over و در آخر الگوریتم های Selection به این خوبی نسل های جدید پیشرفت میکنند.اولین بار که دیدم اینقدر هیجان زده شده بودم که نگو!!!!!

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •