رفتن به نوشته‌ها

برچسب: آشوب

🎞 گفت‌وگو در مورد علم شبکه و علم داده

این برنامه به منظور آشنایی بیشتر با علم شبکه و علم داده در قالب یک گفت‌وگوی زنده اینستاگرامی برگزار شد. در این برنامه به این کتاب‌ها و مطالب اشاره شد:

میهمانان

مژگان خانجانیان پاک 🇮🇷
دانشجوی دکتری فیزیک سیستم‌های پیچیده، انتشار بیماری در شبکه‌های پیچیده، دانشگاه تحصیلات تکمیلی زنجان

سارا حیدری 🇫🇮
دانشجوی دکتری سیستم‌های پیچیده، جامعه‌شناسی محاسباتی، دانشکده علوم کامپیوتر، دانشگاه آلتو

سینا سجادی 🇦🇹
دانشجوی دکتری علم شبکه، علوم اجتماعی محاسباتی، مرکز علوم پیچیدگی وین

پرسش‌های اصلی که در این برنامه دنبال شد به شرح زیر است:

  • اسم دقیق این گرایش چیست؟
  • هدف و پرسش‌های معروف در این گرایش چیست؟ متخصصان به چه نوع از مسائل علاقه دارن؟
  • به نظر شما چه تصویر رایج غلطی در ذهن عوام در مورد این گرایش وجود دارد؟
  • چگونه با این رشته آشنا شدین؟ 
  • چه‌طور متوجه شدید که این گرایش مناسب شماست؟
  • محیط کار شما چه شکلی است؟ (آزمایشگاه، رصدخانه، پشت میز، کار با کامپیوتر و …)
  • یک روز عادی در زندگی حرفه‌ای شما چگونه سپری می‌شود؟
  • آیا از انتخابتان راضی هستید؟
  • سختی‌های زندگی شما شامل چه چیزهایی می‌شود؟
  • آیا به سایر علاقه‌مندان به این گرایش توصیه می‌کنید که به‌طور حرفه‌ای به این گرایش بپردازند؟
  • مقدمات علمی و فنی لازم برای ورود به این گرایش
  • درس‌های اصلی (ارائه شده و نشده در مقطع کارشناسی)
  • مهارت‌های جانبی (توانایی محاسباتی و کار کردن با نرم‌افزارهای خاص)
  • کدام دانشگاه و یا مراکز تحقیقاتی در ایران به این گرایش می‌پردازند؟
  • بازار کار در ایران و خارج چگونه است؟
  • امکان تحصیل در خارج از کشور و پذیرش گرفتن در این گرایش چگونه است؟
  • آینده کاری و وضعیت رفاهی خود را چگونه می‌بینید؟ در ایران/خارج

در اینستاگرام ببینید:

در یوتیوب بینید:

اطلاعات بیشتر:

فیزیک آماری و سیستم‌های پیچیده

#شرح_پیچیدگی

در توییتر متخصصان حوزه پیچیدگی با هشتگ #ComplexityExplained در مورد مفهوم پیچیدگی توییت کردند و ماحصل توییت‌ها تبدیل به دفترچه‌ای شد در #شرح_پیچیدگی. دفترچه‌ای برای توضیح مفهوم پیچیدگی بر اساس آرا صاحب‌نظران این حوزه!

شما می‌توانید سایت اصلی این پروژه را با رفتن به این نشانی ببینید:
complexityexplained.github.io

این اثر با مجوز زیر منتشر شده است:
CC BY-NC-ND 4.0

این شما و این نسخه فارسی این دفترچه :

ComplexityExplainedFarsi

پیشنهادهایی برای دانشجویان تحصیلات تکمیلی، به‌ویژه برای سیستم‌های پیچیده

تجربه من از دوران کارشناسی ارشد سیستم‌های پیچیده در دانشگاه شهید بهشتی و دکتری علوم کامپیوتر در دانشگاه آلتو چیزهای مختلفی بهم یاد داد. شاید بعضی از این تجربه‌ها به کار شما هم بیاد اگر که به تازگی دوران کارشناسی ارشد یا دکتری خودتون رو در زمینه سیستم‌های پیچیده شروع کرده باشید.

تا جایی که می‌تونید با سواد بشید.

در هر دانشگاهی، یک سری درس ارائه میشه که شما موظف هستید که بخشی از اون‌ها رو بگذرونید. به نظرم چندان در برابر عناوین اون درس‌ها مقاومت نکنید. این‌که من قراره سیستم‌پیچیده بخونم پس نباید کوانتوم پیشرفته بگذرونیم یا درس ماده چگال پاس کنم یا نظریه میدان به من چه اصلا، حرف‌هایی هست که زیاد شنیده میشه و به نظر من همه‌شون نگاه‌های اشتباهی رو معرفی می‌کنند. تا جایی که میشه سعی کنید از این فرصت‌ها برای یادگیری چیزهای مختلف استفاده کنید. خوبه که آدم یک‌بار برای همیشه خیلی عمیق مکانیک کوانتومی رو یادبگیره و بدونه فیزیک ماده چگال سراغ چه چیزه‌هایی میره. اصلا اشکالی نداره که یک بار با نظریه میدان روبه‌رو بشید؛ اگه الان روبه‌رو نشید شاید دیگه هیچ موقع این فرصت رو پیدا نکنید که این مطالب رو با حوصله یادبگیرید. حواستون باشه سواد آدم‌ها با کتاب‌خوندن و سر کلاس رفتن و تمرین حل کردن به دست می‌آد. وقت زیادی بذارید در ترم‌های اول دوره‌تون برای این‌که باسواد بشید. اگر فکر می‌کنید که استادتون خوب درس نمیده یا به هر دلیلی از کلاسی راضی نیستید سعی کنید از اینترنت استفاده کنید.

یک روحیه مهم توی زندگی حرفه‌ای خصوصا پژوهش بین رشته‌ای اینه که یادگرفتن چیزای تازه کار سختی نیست.
همیشه میشه چیزای جدید یادگرفت. در پژوهش هنر اینه که سوالای خوب بتونی بپرسی. بعد برای جواب دادن به سوالت، هر چیزی که از هر رشته یا موضوع یا زمینه هست رو در سریع‌ترین زمان ممکن به قدر لازم یادبگیری. این چهار درس طلایی از واینبرگ در مورد پژوهش رو بخونید.

مستقل از حرف‌های بالا، یه سری چیزها رو باید خوب بدونید:

برنامه‌نویسی و شبیه‌سازی رو جدی بگیرید

احتمال زیاد در دوره لیسانس هیچ موقع شما درست حسابی کد نزدید. اما از الان به بعد نه تنها باید زیاد کد بزنید بلکه باید «درست» هم کد بزنید؛ کد شما باید بهینه و خوانا باشه! لطفا به جای غر زدن و بازگو کردن این حقیقت که ای بابا ما قبلا کلاس برنامه‌نویسی نداشتیم و این جور حرفا بچسبید به زندگی علمی‌تون و تلاش کنید که از فرصت‌های پیش اومده برای بهتر شدن استفاده کنید تا بد و بیراه گفتن به زمانه! پیشنهاد می‌کنم با پایتون یا سی‌پلاس‌پلاس شروع کنید و بعدا سراغ زبان‌های دیگه برید،‌ مثل ژولیا! کورس پایتون برای همه و کورس پایتون برای پژوهش برای شروع خوبه. سعی کنید این مدت جوری کد بزنید که بعد از فارغ‌التحصیلی اگه خواستید از دانشگاه فاصله بگیرید، توی صنعت (بازار) کار گیرتون بیاد! سعی کنید تمرین‌های جالب برنامه‌نویسی انجام بدین و خلاصه‌ای از کارتون رو به همراه کدهاتون روی گیت‌هاب یا جاهای این شکلی بذارین. این سبب میشه که در آینده، سندی داشته باشین برای این‌که نشون بدین چقدر برنامه‌نویس خوبی هستین.

عمیق بشید

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

دانشجوی خوب کارشناسی ارشد بعد از تموم شدن دوره‌ش می‌دونه که کجا باید دنبال موقعیت دکتری باشه. اگه به جای این‌که حرفه‌ای عمل کرده باشین، سر خودتون رو شیره مالیده باشید اون موقع سرتون حسابی بی‌کلاه می‌مونه. اگه هم دانشجوی دکتری در این وضعیت باشه که دیگه وای به حالش!

تماشاچی نباشید!

مثل عمده دانشجوها بی‌تفاوت نباشید! فعال باشید، سوال بپرسید، خودتون و بقیه رو به چالش بکشید. جو گیر نباشید ولی در کنفرانس‌های مختلف شرکت کنید. سعی کنید توی جلسات هفتگی فعالانه شرکت کنید. ژورنال کلاب راه بندازین. با بچه‌هایی که سرشون به تنشون می‌ارزه جمع بشین و هفتگی مقالات مهم رو بخونید. در موردشون بحث کنید، حرف بزنید و تلاش جدی داشته باشید که خودتون رو جزوی از جامعه جهانی بدونید!

این جزئیات هم مهمه:

فرکتال‌ها، مفاهیم مقیاسی و بازبهنجارش

تصمیم گرفتم تا جایی که می‌توانم، مسیر یادگیری سیستم‌های پیچیده را برای علاقمندانی که جرات یادگرفتن و شهامت حرکت کردن بیرون از مرزهای تعریف شده علوم را دارند را هموار کنم. برای شروع قصد دارم چند جلسه کلاس/سمینار در دانشگاه شهید بهشتی (تهران) برگزار کنم. ایده اصلی این جلسات لکچرهایی پیرامون مفاهیم اصلی سیستم‌های پیچیده است بی‌آن‌که وارد جزئیات ریز آن شوم. می‌خواهم طی این جلسات افراد با پیش‌زمینه‌های مختلف با ایده‌های اصلی آشنا شوند.

فیزیک نیوتون و موضوعات مربوط به حساب دیفرانسیل و انتگرال که غالب تفکر علمی سه سده گذشته را تشکیل داده‌اند بر این ایده استوار هستند که هر چه مقیاس فضایی یا زمانی یک سیستم فیزیکی را ریزتر و ریزتر کنیم، با سیستمی ساده‌تر، هموارتر و با جزئیات کمتری روبه‌رو می‌شویم. ملاحظات دقیق‌تری نشان می‌دهد که ساختار ریزمقیاس سیارات، مواد و اتم‌ها بدون جزئیات نیست. با این وجود، برای بسیاری از مسائل، چنین جزئیاتی در مقیاس‌های بزرگ‌تر نامرتبط به حساب می‌آیند. از آن‌جا که این جزئیات مهم نیستند، فرموله کردن نظریه‌ها به شیوه‌ای که اصلا جزئیاتی وجود نداشته باشد منجر به همان نتایجی می‌شود که با در نظر گرفتن توصیف دقیقی از سیستم می‌توان به آن‌ها رسید.

برف دانه کخ – یک فرکتال کاملا خودمتشابه. نگاره از ویکی‌پدیا


می‌دانیم در رویارویی با سیستم‌های پیچیده، هموار کردن پی‌در‌پی سیستم در مقیاس‌های ریزتر معمولا نقطه شروع مناسبی برای مطالعه سیستم به طور ریاضیاتی نیست. درک این موضوع، تغییر چشم‌گیری را در بنیادهای فکری ما به همراه داشته است.

در این سخنرانی ابتدا فرکتال‌ها، به عنوان موجوداتی که در مقیاس‌ ریزتر جزئیاتشان را از دست نمی‌دهند را معرفی می‌کنیم. سپس بی‌آنکه سراغ جعبه ابزار نظریه میدان‌های کوانتومی رویم، ایده بازبهنجارش را به عنوان چارچوب جامع‌تری برای مطالعه رفتار سیستم‌ها در مقیاس‌های مختلف و چگونگی ارتباط این رفتارها مطرح می‌کنیم.

ویدیو:

اسلایدها (کلیک کنید!)

منابع:

یادگیری «سیستم‌های پیچیده» رو از کجا و چه‌طور آغاز کنیم؟!

خیلی وقته که از من پرسیده میشه که اگر بخوایم یادگیری سیستم‌های پیچیده رو شروع کنیم باید چیکار کنیم؟! آیا میشه بیرون از دانشگاه این کار رو انجام داد؟ یا اگر من رشته‌م مثلا کیهان‌شناسی، آمار یا ریاضی هست برام مقدوره که یادبگیرم؟ خب جواب اینه: چرا که نه! اما اینکه یک راه خیلی خاص وجود داشته باشه، راستش وجود نداره. در حقیقت آدم‌های مختلفی به این سوال طی سال‌های گذشته جواب‌های متنوعی دادن؛ مثلا  مارک نیومن یک‌بار در مورد موضوعات مطرح و منابع موجود در Complex Systems: A Survey نوشته. با این حال سعی می‌کنم طرحی برای شروع یادگیری سیستم‌های پیچیده در ادامه ترسیم کنم. از هرگونه نظر، انتقاد یا پیشنهاد از صمیم قلب استقبال می‌کنم، به‌ویژه از طرف متخصصان. راستی  قبل‌تر نوشته‌ای با عنوان «چگونه یک‌ فیزیک‌دان نظری خوب شویم؟» از خِراردوس توفت، نوبلیست، ترجمه کرده بودم.

اخیرا کتابی منتشر شده به اسم «مقدمه‌ای بر نظریه سیستم‌های پیچیده» که برای شروع سیستم‌های پیچیده کتاب بدی نیست. مخصوصا فصل‌های اولش!

کتاب مقدمه‌ای بر نظریه سیستم‌های پیچیده

پیش‌فرض این نوشته اینه که خواننده به حساب دیفرانسیل و انتگرال، معادلات دیفرانسیل و فیزیک پایه مسلط هست و علاقه شدیدی به ورود به حوزه بین‌رشته‌ای داره! اصلی‌ترین پیش‌نیاز برای یادگیری سیستم‌های پیچیده شهامت و حوصله کافی برای ورود به دنیایی تازه و هیجان‌انگیزه! اگر به دنبال کتابی هستین که حس کلی از «سیستم‌های پیچیده» به شما بده نگاه کنید به کتاب «سیری در نظریه پیچیدگی» نوشته ملانی میچل با ترجمه رضا امیر رحیمی.  همین‌طور کورس مقدماتی در Complexity Explorer وجود داره برای این که یک آشنایی کلی از سیستم‌های پیچیده پیدا کنید.

لیستی که در ادامه اومده، بسته به هر موضوع، از ابتدایی به پیشرفته مرتب شده و تقریبا سعی کردم ترتیب معنی‌داری برقرار کنم. به این معنی که شما می‌تونید به‌ترتیب موضوعات مطرح شده یادگیری اون‌ها رو شروع کنید و بسته به زمانی که دارین توی هر کدوم عمیق و عمیق‌تر بشین!

۱) جبر خطی و ماتریس‌ها

برای شروع نیاز به مفاهیم‌ و تکنیک‌های جبرخطی دارین. باید بتونید با ماتریس‌ها خوب کار کنید.

  1. کورس جبر خطی Vector and Matrix Algebra by Anthony D. Rhodes
  2. ویدیوهای Essence of linear algebra
  3. کورس و کتاب جبرخطی Gilbert Strang

این کتاب با نگاهی جدید به مکانیک کلاسیک، به موضوعات مورد نیاز برای سیستم‌های پیچیده می‌پردازد.

۲) مکانیک کلاسیک

بخش زیادی از سیستم‌های پیچیده توسط فیزیک‌دانان توسعه داده شده، پس باید با ادبیات ابتدایی فیزیک آشنا بشید!

  1. کورس مکانیک کلاسیک لنرد ساسکیند
  2. کتاب Introduction to Modern Dynamics – Chaos, Networks, Space and Time – David D. Nolte

۳) آمار، احتمال و فرایندهای تصادفی

ایده‌های اصلی آمار و احتمال رو باید بدونید. یعنی هرکسی که در دنیای امروز زندگی می‌‌کنه باید بدونه!

  1. کتاب An Introduction to Random Vibrations, Spectral & Wavelet Analysis by D. E. Newland
  2. کتاب Probability Theory: The Logic of Science by E. T. Jaynes
  3. جزوه فرایندهای تصادفی دکتر کریمی‌پور

۴) فرکتال‌ها و مفاهیم مقیاسی

  1. مقدمه‌ای بر هندسه فرکتالی: ویدیو
  2. کتاب Scale: The Universal Laws of Growth, Innovation, Sustainability, and the Pace of Life in Organisms, Cities, Economies, and Companies by Geoffrey West
  3. کورس Fractals and Scaling by David Feldman
  4. این ویدیو رو ببینید:

۵) فیزیک آماری و پدیده‌های بحرانی

مکانیک آماری رو خیلی خوب باید بدونید! از ایده‌های ابتدایی تا مباحث پیشرفته. مدل آیزینگ رو خیلی جدی بگیرین!

  1. کورس مکانیک آماری لنرد ساسکیند
  2. کورس و کتاب فیزیک آماری ذرات، مهران کاردر
  3. کتاب Statistical Mechanics Entropy, Order Parameters, and Complexity by James P. Sethna
  4. کورس کوتاه  Introduction to Renormalization by Simon DeDeo
  5. کتاب Lectures On Phase Transitions And The Renormalization Group by Nigel Goldenfeld
  6. کتاب David Tong: Lectures on Kinetic Theory

    کتاب دینامیک غیرخطی و آشوب استیون استروگتز به همراه ویدیوهای کلاس درسش یکی از بهترین منابع یادگیری دینامیک غیرخطی است.

۶) دینامیک غیرخطی و آشوب

  1. کورس Introduction to Dynamical Systems and Chaos by David Feldman
  2. کورس و کتاب Nonlinear Dynamics and Chaos by Steven H. Strogatz
  3. کورس Nonlinear Dynamics: Mathematical and Computational Approaches by Liz Bradley

۷) شبکه‌ها (علم شبکه)

  1. ویدیو «ظهور علم شبکه»
  2. مقاله مروری The shortest path to complex networks by S. N. Dorogovtsev and J. F. F. Mendes
  3. این ۴ ویدیو رو ببینند.
  4. کتاب علم شبکه باراباشی
  5. کتاب Networks: An Introduction by Mark Newman
  6. این ویدیو رو ببینید:

۸) روش‌ها و تکنیک‌های محاسباتی و شبیه‌سازی

  1. کورس پایتون برای همه
  2. کورس پایتون برای پژوهش
  3. کتاب Monte Carlo Simulation in Statistical Physics: An Introduction by Kurt Binder, Dieter W. Heermann
  4. کتاب Complex Network Analysis in Python by Dmitry Zinoviev
  5. کورس Introduction to Agent-Based Modeling by William Rand

۹)  نظریه اطلاعات و محاسبه

Self-contained, precise. Numerous examples and exercises make it a valuable teaching book
Builds a bridge between physics of glasses and computer science problems

  1. کورس Introduction to Computation Theory by Josh Grochow
  2. مقاله مروری A Mini-Introduction To Information Theory by Edward Witten
  3. کتاب Information, Physics, and Computation by Marc Mézard and Andrea Montanari

۱۰) نظریه بازی‌‌ها

  1. کورس Game Theory I – Static Games by Justin Grana
  2. کورس Game Theory II- Dynamic Games by Justin Grana
  3. کتاب Strategy: An Introduction to Game Theory by Joel Watson

۱۱) یادگیری ماشین

  1. کورس Matrix Methods in Data Analysis, Signal Processing, and Machine Learning – Gilbert Strang
  2. کورس Fundamentals of Machine Learning by Brendan Tracey and Artemy Kolchinsky
  3. مقاله مروری A high-bias, low-variance introduction to Machine Learning for physicists
  4. ویدیو Bayesian Inference by Peter Green

به طور کلی، دوره‌های آموزشی Complexity Explorer رو دنبال کنید. موسسه سن‌تافه (سانتافه!)  یک کورس مقدماتی روی پیچیدگی داره. همین‌طور پیشنهاد می‌کنم عضو کانال Complex Systems Studies در تلگرام بشین. فراموش نکنید که اینترنت پره از منابع خوب برای یادگیری ولی چیزی که کمه، همت! در آخر دیدن این ویدیو رو با زیرنویس فارسی پیشنهاد می‌کنم:

سیستم‌های پیچیده: «ماهیت و ویژگی‌»

پیچیدگی چیست؟!

حدود۳۳۰ سال پیش، نیوتون با انتشار شاهکار خود، اصول ریاضی فلسفه طبیعی، نگاهی جدید نسبت به بررسی طبیعت  را معرفی کرد. نگاه نیوتون به علم به کمک نظریه الکترومغناطیس که توسط مکسول جمع بندی و در نهایت توسط آلبرت اینشتین کامل شد، شالوده فیزیک‌کلاسیک را بنا نهاد. انقلاب بعدی علم، توسط مکانیک کوانتومی رخ‌داد. ‌آن‌چه که مکانیک کوانتومی در قرن ۲۰ میلادی نشانه گرفت، مسئله موضعیت در فیزیک کلاسیک و نگاه احتمالاتی به طبیعت بود. نگاهی که سرانجام منجر به پارادایمی جدید در علم، به عنوان فیزیک مدرن شد. با این وجود، علی‌رغم پیشرفت‌های خارق‌العاده در فیزیک و سایر علوم، کماکان در توجیه بسیاری از پدیده‌ها ناتوان مانده‌ایم. پدیده‌هایی که همیشه اطرافمان حاضر بوده‌اند ولی هیچ‌موقع قادر به توجیه رفتار آن‌ها نبوده‌ایم. بنابراین، می‌توان به این فکر کرد که شاید در نگاه ما به طبیعت و مسائل علمی، نقصی وجود داشته باشد. به‌ دیگر سخن، بعید نیست که مجددا نیاز به بازنگری در نگاهمان به طبیعت (تغییر پارادایم) داشته باشیم؛ عده‌ی زیادی معتقدند آن‌چه که در قرن ۲۱ام نیاز است، نگاهی جدید به مبانی علم است؛ نگاه پیچیدگی!

سردمداران فیزیک مدرن – پنجمین کنفرانس سُلوی (۱۹۲۷).

گاهی گفته می‌شود که ایده پیچیدگی، بخشی از چهارچوب اتحاد بخشی برای علم و انقلابی در فهم ما از سیستم‌هایی مانند مغز انسان یا اقتصاد جهانی است که رفتار آن‌ها به‌سختی قابل پیش‌بینی و کنترل است. به همین خاطر، سوالی مطرح می‌شود؛ آیا چیزی به عنوان «علم پیچیدگی» وجود دارد یا اینکه پیچیدگی متناظر با هر شاخه‌ای از علم، دارای شیوه خاص خود است و مردم در رشته‌های مختلف مشغول سر و کله زدن با سیستم‌های پیچیده زمینه کاری خود هستند؟! به عبارت دیگر، آیا یک پدیده طبیعی مجرد به اسم پیچیدگی، به عنوان بخشی از یک نظریه خاص علمی در سیستم‌های متنوع فیزیکی (شامل موجودات زنده)  وجود دارد یا اینکه ممکن است سیستم‌های پیچده گوناگونی بدون هیچ وجه مشترک وجود داشته باشند؟! بنابراین، مهم‌ترین سوالی که در زمینه پیچیدگی می‌توانیم بپرسیم این است که، به‌ راستی پیچیدگی چیست؟ و در صورت وجود پاسخ مناسب به این پرسش، به دنبال این باشیم که آیا برای تمام علوم یک نوع پیچیدگی وجود دارد یا اینکه پیچیدگی وابسته به حوزه مورد مطالعه است!

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

  • برای ما، پیچیدگی به معنای وجود ساختار به همراه تغییرات است. (۱)
  • از یک جهت، سیستم‌پیچیده، سیستمی است که تحول آن شدیدا به شرایط اولیه و یا اختلال‌های کوچک حساس است. سیستمی شامل تعداد زیادی قسمتِ مستقلِ درحالِ برهمکنش با یکدیگر که می‌تواند مسیرهای مختلفی برای تحولش را بپیماید. توصیف تحلیلی چنین سیستمی قاعتدا نیاز به معادلات دیفرانسیل غیرخطی دارد. از جهت دیگر، می‌توانیم نگاهی غیررسمی داشته باشیم، به این معنا که اگر بخواهیم قضاوتی داشته باشیم، سیستم «بغرنج (complicated) » است و قابلیت اینکه دقیقا به طور تحلیلی یا نوع دیگری توصیف شود  وجود نداشته باشد.(۲)
  • به طور کلی، صفت «پیچیده»، سیستم و یا مولفه‌ای را توصیف می‌کند که فهم یا تغییر طراحی و/یا عملکرد آن دشوار باشد. پیچیدگی توسط عواملی چون تعداد مولفه‌های سازنده و روابط غیربدیهی بین‌ آن‌ها، تعداد و روابط غیربدیهی شاخه‌های شرطی، میزان تودرتو بودن و نوع ساختمان داده است. (۳)
  • نظریه پیچیدگی بیان می‌کند که جمعیت زیادی از اجزا، می‌توانند به سمت توده‌ها خودسازماندهی کنند و منجر به ایجاد الگو، ذخیره اطلاعات و مشارکت در تصمیم‌گیری جمعی شوند. (۴)
  • پیچیدگی در الگوهای طبیعی نمایانگر دو مشخصه کلیدی است؛ الگوهای طبیعی حاصل از پردازش‌های غیرخطی، آن‌هایی که ویژگی‌های محیطی که در آن عمل می‌کنند یا شدیدا جفت‌شده‌اند  را اصلاح می‌کنند و الگوهای طبیعی که در سیستم‌هایی شکل می‌گیرند که یا باز هستند یا توسط تبادل انرژی، تکانه، ماده یا اطلاعات توسط مرزها از تعادل خارج شده‌اند. (۵)
  • یک سیستم پیچیده، دقیقا سیستمی است که برهم‌کنش‌های چندگانه‌ای بین عناصر متفاوت آن وجود دارد. (۶)
  • سیستم‌های پیچیده، سیستم‌هایی با تعداد اعضای بالایی هستند که نسبت به الگوهایی که اعضای آن می‌سازند، سازگار می‌شوند یا واکنش نشان می‌دهند. (۷)
  • در سال‌های اخیر، جامعه علمی، عبارت کلیدی «سیستم‌ پیچیده‌»  را برای توصیف پدیده‌ها، ساختار، تجمع‌ها، موجودات زنده و مسائلی که چنین موضوع مشترکی دارند را مطرح کرده است: ۱) آن‌ها ذاتا بغرنج و تودرتو هستند. ۲) آن‌ها به ندرت کاملا تعینی هستند. ۳) مدل‌های ریاضی این گونه سیستم‌ها معمولا پیچیده و شامل رفتار غیرخطی، بدوضع (ill-posed) یا آشوبناک هستند. ۴) این سیستم‌ها متمایل به بروز رفتارهای غیرمنتظره (رفتارهاری ظهوریافته) هستند. (۸)
  • پیچیدگی زمانی آغاز می‌شود که علیت نقض می‌شود! (۹)

برای آشنایی بیشتر به این پروژه سر بزنید!

در مورد تعاریف فوق ابهاماتی وجود دارد؛ در (۱) باید ساختار و تغییرات را به درستی و دقت معنا کنیم. در (۲) باید به دنبال تلفیق سیستم‌های پیچده و مفاهیمی چون غیرخطی، آشوب‌ناک و بس‌ذره‌ای بودن باشیم و به درستی مشخص کنیم که آیا این‌ ویژگی‌ها شرط لازم / کافی برای یک سیستم پیچیده هستند یا نه. (۳) و (۴) مفاهیم محاسباتی و موضوعاتی از علم کامپیوتر را مطرح می‌کند که به خودی‌خود مسائل چالش‌برانگیزی هستند! (۵) ایده مرکزی غیرخطی بودن را مطرح می‌کند؛ در ادامه می‌بینیم با این که تعداد زیادی از سیستم‌های پیچیده از ویژگی غیرخطی بودن تبعیت می‌کنند، با این وجود غیرخطی بودن نه شرط لازم و نه شرط کافی برای پیچیدگی است. در مورد (۶) و (۷) نیز باید تاکید کنیم که بس‌ذره‌ای بودن و شامل اعضا/عناصر/مولفه/افراد زیادی بودن نیز شرط کافی برای پیچیدگی نیست.  در ادامه خواهیم دید، تعریف (۸) که ایده‌ی پدیدارگی (ظهوریافتگی یا برآمدگی: Emergence) را مطرح می‌کند می‌تواند مفهومی بسیار گیج‌کننده باشد برای اینکه به کمک آن بتوانیم سیستم‌های پیچیده را تمیز و تشخیص دهیم. در مورد تعریف (۹) باید بحث زیادی کنیم چرا که افراد زیادی در برابر نقص علیت ناراحت خواهند شد! به همین دلیل است که گاهی درک سیستم‌های پیچیده برای مردم دشوار است. بنابراین با توجه به ابهامات تعاریف افراد مختلف در حوزه‌های گوناگون علم، بهتر از است که مفاهیم وابسته به پیچیدگی را بررسی کنیم.