یادگیری ماشین در معماری

محمد زمانی مندالی متولد ایران گرگان 
زاده ۱۹۹۲ است
زبان‌شناسی

 بر روی ساختار الگوریتم های هوش مصنوعی تسلط دارد و می‌تواند آموزش سازنده به تمام ماشین ها بدهد 
**[[یادگیری ماشین]]**  زیرمجمو‌عه‌ای از هوش مصنوعی است که بر الگوریتم‌ها و مدل‌های آماری تمرکز دارد و رایانه‌ها قادر می‌شوند تا بدون برنامه‌ریزی توسط کاربر انسانی عملکرد خود را یاد بگیرند و آن‌ را بهبود ببخشند. به عبارت دیگر، یادگیری ماشینی شامل الگوریتم‌هایی است که الگوها را در داده‌ها شناسایی می‌کند و از آن الگوها برای پیش‌بینی و تصمیم‌گیری استفاده می‌کند.یادگیری ماشین در معماریهوش مصنوعی

## هوش مصنوعی
نزدیک به پنجاه سال است که هوش مصنوعی شاخه فعالی برای محققین کامپیوتر و روانشناسی بوده است. هوش مصنوعی علمی است که به تقلید توانایی‌های ذهنی انسان در رایانه می‌پردازد. یک سیستم مصنوعی که متشکل از نظام‌هایی است که رفتاری انسان‌گونه داشته باشد. علم هوش مصنوعی با تکیه بر دانش و الگو‌های استدلالی و تجربه انسان شکل گرفته است.

هوش مصنوعی ریشه در فسلفه، زبان‌شناسی، ریاضیات، عصب‌شناسی، فیزیولوژی، نظریه کنترل، احتمالات و بهینه‌سازی دارد.

به نقل از جان مک‌کارتی که اولین بار در سال 1956 از واژه هوش مصنوعی استفاده کرد، هوش مصنوعی «دانش و مهندسی ساخت ماشین‌های هوشمند» تعریف شده است.

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

هوش مصنوعی به طور کلی در 6 زمینه ( پردازش زبان طبیعی، یادگیری عمیق، شبکه‌‌های عصبی، یادگیری ماشین، بینایی کامپیوتری و رایانش ادراکی) تقسیم بندی می‌شود.  

**ویژگی‌هایی که هوش مصنوعی باید داشته باشد:**

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

## یادگیری ماشین در معماری
یادگیری ماشینی امکان یادگیری خودکار و بدون برنامه‌ریزی صریح را  به انسان می‌دهد. عامل منحصر به فرد مربوط به رویکرد یادگیری ماشینی در طراحی این است که الگوریتم‌ها برای وظایف خاص برنامه‌نویسی نشده‌اند. الگوریتم‌ها با استفاده از داده‌های ورودی (معروف به مجموعه آموزش) مدل‌های ریاضی را ایجاد می‌کنند و این مدل‌ها را برای یادگیری روش‌های صحیح برای پیش‌بینی نتایج به کار می‌گیرند.

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

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

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

**سه شاخه اصلی یادگیری ماشین را می‌توان به شرح زیر لیست کرد:**

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

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

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

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

رویکرد‌های جدید برای تولید خلاقانه شبکه‌های تولید الگو، یادگیری کنجکاوانه، افزایش ظرفیت قدرت محاسباتی و همچنین بلوغ الگوریتم‌هایی که استفاده رایگان تحت کتابخانه‌هایی چون  Accord.NET, TensorFlow, Keras, Caffe, CNTK دارند بوجود آمده‌است.
Mohammad Zamani

## فصل مشترک‌های یادگیری‌ماشینی با حیطه‌های مختلف معماری
کاربردهای معماری که فراتر از طراحی هستند تعریف شده‌اند که در حوزه‌ی اجرایی معماری می‌توان آن‌ها را این‌گونه دسته‌بندی کرد.

#### حوزه اجرایی پیدایشی 1: تجزیه و تحلیل فضای طراحی - پارامترسازی پیدایشی
فصل مشترک ماشین‌لرنینگ و طراحی زایا می‌تواند حالت‌های متعددی با تمایزسازی و جستجو بوجود بیاورد. با ادغام مدل‌های پارامتریک و طراحی مولد می‌توان حجم زیادی از آلترناتیوهای طراحی را بوجود آورد. تعیین و محدود کردن داده‌های ورودی دامنه توپولوژی و ویژگی‌های ظهوری فضای طراحی شده را محدود می‌کند. اما این تطابق بیش از حد پارامترهای توصیفی که برای بهینه‌سازی طرح‌ها اعمال می‌شوند، می‌تواند اطلاعات مفید موجود برای طراحی را سرکوب و عملا بلا استفاده کند.

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

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

#### حوزه اجرایی پیدایشی 4: داده های عملیات و عمر - تطبیق رفتار مداوم
این حوزه استفاده از فضا و اشغال آن را پیش‌بینی و ممکن می‌سازد.

برای مثال Hybrid Sentient Canopy یک ساختار خیمه‌مانند است که با بازدیدکنندگان با حرکت درونی خود تعامل دارد. برای پشتیبانی این رفتار تعاملی سیستم‌های گیرنده الکترونیکی که قابلیت تشخیص صدا، نور و ماشین‌های حسگر توسعه یافته است.

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

## کاربرد یادگیری ماشینی در معماری
از طریق این راهکارها، یادگیری ماشینی و هوش مصنوعی می‌توانند به معماران در ارتقاء کیفیت، بهینه‌سازی فرآیندها، و حل چالش‌های معماری کمک کنند.

**تجزیه و تحلیل داده:**

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

**پتانسیل مدل‌های پیش‌بینی:**

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

**طراحی معماری با توجه به محیط:**

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

**ساخت مواد و سازه‌های هوشمند:**

از تکنیک‌های هوش مصنوعی برای توسعه مواد و سازه‌های هوشمند بهره‌برداری می‌شود که ممکن است خصوصیات مثل خودترمیمی، تطابق با محیط، یا بهبود بهره‌وری انرژی را داشته باشند.

**ساختاردهی فضا و طراحی خودکار:**

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

**بهبود بهره‌وری انرژی:**

از الگوریتم‌های یادگیری ماشینی برای بهبود بهره‌وری انرژی در ساختمان‌ها استفاده می‌شود، از جمله بهینه‌سازی سیستم‌های تهویه، نورپردازی، و سیستم‌های انرژی‌های تجدیدپذیر.

**پشتیبانی از تصمیم‌گیری:**

سیستم‌های هوش مصنوعی می‌توانند در فرآیند تصمیم‌گیری معماری کمک کنند، از جمله انتخاب مواد ساختمانی، ترتیب اجزاء معماری، و حتی انتخاب طراحی بهینه.

**گزینه‌های طراحی**

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

**افزایش ایمنی ساختمان**

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

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

الگوریتم‌های یادگیری ماشین مدل‌های محاسباتی هستند که کامپیوترها را قادر می سازد تا از داده ها یاد بگیرند و پیش‌بینی یا تصمیم‌گیری کنند بدون اینکه به طور صریح برای کار خاص برنامه ریزی شوند. این الگوریتم ها جزء کلیدی حوزه گسترده هوش مصنوعی هستند. انواع مختلفی از الگوریتم های یادگیری ماشین وجود دارد که به طور کلی به سه نوع اصلی تقسیم می شوند: یادگیری تحت نظارت (supervised learning)، یادگیری بدون نظارت (unsupervised learning) و یادگیری تقویت (reinforcement learning).

### '''یادگیری تحت نظارت (supervised learning):'''
در یادگیری تحت نظارت، الگوریتم بر روی مجموعه داده های برچسب دار آموزش داده می شود، جایی که داده های ورودی با برچسب های خروجی مربوطه جفت می شوند. هدف این است که نقشه برداری را از ورودی به خروجی یاد بگیریم تا الگوریتم بتواند پیش بینی های دقیق را در مورد داده های جدید و نامرئی انجام دهد.

##### الگوریتم های رایج عبارتند از:

# Linear Regression
# Support Vector Machines (SVM)
# Decision Trees
# Random Forest
# Neural Networks

### '''یادگیری بدون نظارت (unsupervised learning):'''
یادگیری بدون نظارت با داده های بدون برچسب سروکار دارد ، جایی که الگوریتم سعی می کند الگوها یا ساختارهای درون داده ها را بدون راهنمایی صریح پیدا کند. هدف اغلب کشف الگوهای پنهان ، گروه بندی نقاط داده مشابه یا کاهش ابعاد داده ها است.

##### الگوریتم های رایج عبارتند از:

# K-Means Clustering
# Hierarchical Clustering
# Principal Component Analysis (PCA)
# Gaussian Mixture Models (GMM)
# Autoencoders

### ''' یادگیری تقویتی (semisupervised learning):'''
یادگیری تقویت شامل یک عامل است که با یک محیط تعامل دارد و یاد می گیرد با دریافت بازخورد به شکل پاداش یا مجازات تصمیم گیری کند. هدف عامل به حداکثر رساندن پاداش تجمعی خود در طول زمان با انجام اقدامات مناسب در حالت های مختلف محیط است.

##### الگوریتم های رایج عبارتند از:

# Q-Learning
# Deep Q Network (DQN)
# Policy Gradient Methods
# Actor-Critic Methods

### دسته‌بندی‌ فرعی
در دسته‌بندی‌ فرعی الگوریتم‌های یادگیری ماشین با موارد زیر روبه‌رو هستیم:

**یادگیری نیمه نظارت شده و خود نظارت شده (Semi-Supervised and Self-Supervised Learning):**

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

* **روش‌های گروه (Ensemble Methods):**

Ensemble Methods پیش‌بینی‌های مدل‌های مختلف را برای بهبود عملکرد کلی ترکیب می‌کنند. نمونه‌هایی از این موارد شامل جنگل‌های تصادفی (Random Forests) و ماشین‌های تقویت گرادیان(Gradient Boosting Machines) (GBM) است.

* **شبکه‌های عصبی (Neural Networks):**

شبکه‌های عصبی دسته‌ای از الگوریتم‌ها هستند که از ساختار و عملکرد مغز انسان الهام گرفته‌اند. یادگیری‌ عمیق  زیر مجموعه‌ای از یادگیری‌ماشین ، شامل شبکه‌های عصبی با لایه‌های مختلف (شبکه‌های عصبی عمیق- deep neural networks) است.

* **رگرسیون و طبقه‌بندی (Regression and Classification):**

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

* **الگوریتم‌های پردازش زبان طبیعی (Natural Language Processing ) (NLP):**

الگوریتم‌های NLP برای وظایف مربوط به زبان انسانی مانند تجزیه و تحلیل احساسات، ترجمه زبان و خلاصه متن طراحی شده‌اند.

مهم است که الگوریتم مناسب را بر اساس ماهیت داده‌ها و کار مورد نظر انتخاب شوند. اثربخشی یک مدل یادگیری ماشین به عواملی مانند کیفیت و کمیت داده ها، انتخاب ویژگی، تنظیم هایپر پارامتر و مناسب بودن الگوریتم انتخاب شده برای مسئله مورد نظر بستگی دارد.

### '''Support vector machines (SVM)'''
ماشین های بردار پشتیبانی (SVMs) مجموعه ای از روش های یادگیری تحت نظارت هستند که برای طبقه بندی ، رگرسیون و تشخیص موارد خارج از محدوده استفاده می شوند.

مزایای دستگاه های بردار پشتیبانی عبارتند از:

·       در فضاهای با ابعاد بالا موثر است.

·       هنوز در مواردی که تعداد ابعاد بیشتر از تعداد نمونه ها باشد موثر است.

·       از زیر مجموعه ای از نقاط آموزش در تابع تصمیم گیری (به نام وکتورهای پشتیبانی) استفاده می کند ، بنابراین حافظه نیز کارآمد است.

·       همه کاره: توابع مختلف هسته را می توان برای تابع تصمیم گیری مشخص کرد. هسته های مشترک ارائه شده است ، اما همچنین ممکن است هسته های سفارشی را مشخص کنید. .

* **الگوریتم KNN:**

الگوریتم k-nearest neighbors ، که با نام‌های KNN یا k-NN نیز شناخته می‌شود ، یک طبقه بندی کننده یادگیری غیر پارامتری و تحت نظارت است که از نزدیکی برای طبقه بندی یا پیش بینی در مورد گروه بندی یک نقطه داده فردی استفاده می کند. اما معمولاً به عنوان یک الگوریتم طبقه‌بندی استفاده می‌شود و بر اساس فرضیه که نقاط مشابه می‌توانند در نزدیکی یکدیگر یافت شوند، کار می‌کند. برای مسائل طبقه‌بندی، یک برچسب کلاس‌دار براساس رای گیری اکثریت اختصاص داده می‌شود؛ به عبارت دیگر، برچسبی که بیشترین نمایندگی را دارد در اطراف یک نقطه داده داده شده استفاده می‌شود. در حالی که این به طور فنی "رای‌گیری اکثریت (plurality voting)" نامیده می‌شود، اصطلاح "رای گیری اکثریت (majority vote)" در ادبیات بیشتر استفاده می‌شود. تفاوت بین این اصطلاح‌ها این است که "majority voting" به طور فنی نیازمند اکثریت بیشتر از 50٪ است، که اصولاً زمانی کار می‌کند که تنها دو دسته وجود دارد. وقتی چندین کلاس وجود دارد - به عنوان مثال چهار دسته، نیازی به 50٪ رای برای انجام نتیجه‌گیری در مورد یک کلاس نیست؛ می‌تواند یک برچسب کلاس را با رای بیشتر از 25٪ اختصاص داد.

***دیاگرام KNN***

مسائل رگرسیون از یک مفهوم مشابه به مسئله طبقه‌بندی استفاده می‌کنند، اما در این حالت، میانگین k نزدیک‌ترین همسایه برای پیش‌بینی در مورد یک طبقه گرفته می‌شود. تفاوت اصلی اینجاست که طبقه‌بندی برای مقادیر گسسته استفاده می‌شود، در حالی که رگرسیون با مقادیر پیوسته استفاده می‌شود. با این حال، قبل از اینکه یک طبقه‌بندی انجام شود، باید فاصله تعریف شود. فاصله اقلیدسی بیشتر استفاده می‌شود. همچنین ارزش دانستن این است که الگوریتم KNN نیز جزو خانواده مدل‌های "یادگیری تنبل (lazy learning)" است، به این معنی که تنها یک مجموعه داده آموزشی را ذخیره می‌کند به جای اینکه یک مرحله آموزشی را طی کند. این همچنین به این معنی است که تمام محاسبات زمانی انجام می‌شود که یک طبقه‌بندی یا پیش‌بینی انجام می‌شود. از آنجا که به طور قابل توجهی بر روی حافظه برای ذخیره تمام داده‌های آموزشی خود وابسته است، نیز به عنوان یک روش یادگیری مبتنی بر نمونه یا مبتنی بر حافظه شناخته می‌شود. Evelyn Fix و Joseph Hodges با ایده‌های اولیه در مورد مدل KNN در این مقاله سال 1951 بحث کردند، در حالی که Thomas Cover در تحقیقات خود در مورد مفهوم آن در مقاله خود "طبقه‌بندی الگوی همسایه نزدیک (Nearest Neighbor Pattern Classification )"، آن را گسترش داد. این الگوریتم هنوز هم یکی از اولین الگوریتم‌هایی است که یک فرد در علم داده به دلیل سادگی و دقت بالا آن را یاد می‌گیرد. با این حال، هر چقدر مجموعه داده بزرگتر می‌شود، KNN به طور نسبی ناکارآمدتر می‌شود و عملکرد کلی مدل را به خطر می‌اندازد. این الگوریتم معمولاً برای سیستم‌های پیشنهاد دادن ساده، شناسایی الگو، استخراج داده، پیش‌بینی بازارهای مالی و ... استفاده می‌شود.

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

### '''[[طراحی زایان|طراحی مولد:]]'''
الگوریتم هایی مانند شبکه های خصمانه مولد (Generative Adversarial Networks) (GANs) و کدگذاری خودکار متغیر (Variational Autoencoders) (VAEs) می توانند برای طراحی مولد استفاده شوند. آنها می توانند به معماران کمک کنند تا چندین گزینه طراحی را به طور خودکار بر اساس محدودیت ها و اهداف داده شده ایجاد و کشف کنند.

### '''بهینه سازی انرژی ساختمان:'''
الگوریتم های یادگیری ماشین، از جمله مدل های رگرسیون و یادگیری تقویت‌، می توانند برای بهینه سازی مصرف انرژی ساختمان استفاده شوند. مدل های پیش‌بینی می توانند داده‌های تاریخی را برای پیش‌بینی مصرف انرژی تجزیه و تحلیل کنند، در حالی که یادگیری تقویت می‌تواند برای کنترل و بهینه سازی سیستم های ساختمانی برای بهره‌وری انرژی استفاده شود.

### '''مدیریت و نگهداری تاسیسات:'''
الگوریتم‌های نگهداری پیش‌بینی ، اغلب بر اساس مدل‌های رگرسیون یا تجزیه و تحلیل سری زمانی ، می توانند در پیش بینی زمانی که اجزای ساختمان یا سیستم‌ها ممکن است نیاز به نگهداری داشته باشند ، کمک کنند. این می تواند کارایی مدیریت امکانات را بهبود بخشد.

### '''برنامه ریزی شهری و مدیریت ترافیک:'''
الگوریتم‌های یادگیری ماشین، مانند خوشه بندی و رگرسیون (clustering and regression)، می‌توانند برای تجزیه و تحلیل الگوهای ترافیک بهینه‌سازی مسیرهای حمل و نقل و کمک به برنامه ریزی شهری استفاده شوند. این می تواند به ایجاد محیط های شهری کارآمدتر و پایدارتر کمک کند.

### '''انتخاب مواد و پیش بینی عملکرد:'''
الگوریتم‌هایی که خواص و عملکرد مواد را تجزیه و تحلیل می‌کنند، مانند مدل های رگرسیون (regression) و شبکه های عصبی (neural networks)، می‌توانند در انتخاب مواد مناسب برای پروژه های ساختمانی کمک کنند. این می تواند به دوام و پایداری ساختمان ها کمک کند.

### '''استفاده از فضا و بهینه سازی طراحی:'''
الگوریتم‌های خوشه‌بندی (clustering) و تکنیک‌های بهینه‌سازی می‌توانند برای تجزیه و تحلیل و بهینه‌سازی استفاده از فضا در ساختمان‌ها استفاده شوند. این می‌تواند به معماران در طراحی فضاهایی که هم کاربردی و هم کارآمد هستند کمک کند.

**پردازش زبان طبیعی (Natural Language Processing) (NLP) برای مستندات طراحی:**

الگوریتم‌های NLP می توانند برای تجزیه و تحلیل اسناد طراحی ، مشخصات و بازخورد کاربر استفاده شوند. این می تواند به معماران کمک کند تا بینش‌هایی را در مورد ترجیحات و الزامات کاربر به دست آورند و روند طراحی را مطلع کنند.

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

### الگوریتم KNN
**انتخاب مواد:**

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

**طرح و بهینه‌سازی طرح فضایی:**

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

**کارآیی انرژی و پایداری:**

طبقه‌بندی طراحی‌های مصرف کم انرژی؛ KNN می‌تواند برای طبقه‌بندی طراحی‌های معماری بر اساس کارآیی انرژی یا پایداری استفاده شود. معماران می‌توانند ویژگی‌های طراحی را وارد کنند و KNN می‌تواند طراحی‌های مشابه را از نظر عملکرد انرژی شناسایی کند.

**انتخاب مکان:**

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

**طراحی نمای و زیبایی:**

شباهت زیبایی: KNN می‌تواند برای یافتن طرح‌های با ویژگی‌های زیبایی مشابه استفاده شود. با نمایش ویژگی‌های طراحی که به زیبایی کمک می‌کنند مانند تناسب یا طرح‌های رنگی، KNN می‌تواند طراحی‌های با جذابیت بصری مشابه را توصیه کند.

**پلتفرم‌های طراحی همکارانه:**

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

**دسترسی و طراحی یکپارچه:**

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

**طراحی پارامتریک:**

مدلسازی پارامتریک؛ در طراحی پارامتری، KNN می‌تواند برای بهینه‌سازی پارامترها برای فرآیندهای طراحی تولیدی استفاده شود. با یادگیری از طراحی‌های پارامتری موجود، KNN می‌تواند مقادیر پارامتری برای طراحی‌های جدید بر اساس شباهت پیشنهاد کند.

**برنامه‌ریزی شهری:**

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

**ترجیحات و بازخورد کاربر:**

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

### ماشین‌های بردار پشتیبان (SVM):
در زمینه طراحی معماری، SVM می‌تواند برای اهداف مختلفی اعمال شود، به ویژه در وظایف دسته‌بندی مرتبط با عناصر طراحی، انتخاب مواد و متریال یا سایر ویژگی‌های معماری. در اینجا یک مروری بر SVM و کاربردهای احتمالی آن در طراحی معماری است:

#### مفهوم اصلی:

* هدف SVM یافتن هایپرپلین بهینه است که بهترین تفکیک بین نقاط داده متعلق به کلاس‌های مختلف در یک فضای بعد بالا را بیشینه می‌کند. این در مواردی موثر است که داده‌ها به صورت خطی تفکیک‌پذیر نباشند و با استفاده از یک تابع هسته ویژگی‌های ورودی را به یک فضای بعد بالاتر تبدیل می‌کند.

#### دسته‌بندی در طراحی معماری:

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

#### بهینه‌سازی پارامترهای طراحی:

* SVMمی‌تواند برای بهینه‌سازی پارامترهای طراحی با در نظر گرفتن فرآیند طراحی به عنوان یک وظیفه دسته‌بندی استفاده شود. به عنوان مثال، می‌تواند در انتخاب بهترین طراحی بر اساس معیارهای تعریف‌شده (مانند کارایی انرژی، کارآیی هزینه یا جذابیت ظاهری) کمک کند.

#### شناسایی الگو در سبک‌های معماری:

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

#### ادغام با الگوریتم‌های دیگر:

* SVM می‌تواند به همراه سایر الگوریتم‌های یادگیری ماشین برای بهبود وظایف مرتبط با طراحی استفاده شود. به عنوان مثال، ادغام SVM با الگوریتم‌های خوشه‌بندی می‌تواند در شناسایی الگوها در طرح‌ها یا طراحی‌های معماری کمک کند.

#### انتخاب مکان و برنامه‌ریزی شهری:

* SVM می‌تواند در دسته‌بندی مکان‌های مناسب برای پروژه‌های ساختمانی بر اساس عوامل مختلف مانند زمین‌شناسی، کیفیت خاک و ملاحظات زیست‌محیطی کمک کند. این می‌تواند به  گرفتن تصمیمات آگاهانه‌تر در برنامه‌ریزی شهری کمک کند.

#### مدیریت مسائل چندکلاسه:

* SVM اصالتاً یک دسته‌بند دودویی است، اما می‌تواند با استفاده از تکنیک‌هایی مانند استراتژی‌های یک-به-یک یا یک-به-همه به مسائل چندکلاسه گسترش یابد.

#### پیش‌پردازش داده و مهندسی ویژگی:

* قبل از اعمال SVM، پیش‌پردازش داده و مهندسی ویژگی امری حیاتی است. این شامل آماده‌سازی مجموعه داده، نرمال‌سازی ویژگی‌ها و انتخاب ویژگی‌های مرتبط است که به دسته‌بندی کمک می‌کنند.

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

## منابع