<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>VEDACUBE</title>
    <link>https://vedacube.tistory.com/</link>
    <description></description>
    <language>ko</language>
    <pubDate>Thu, 9 Apr 2026 07:19:35 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>Kim Taehwan</managingEditor>
    <item>
      <title>주택청약제도란?</title>
      <link>https://vedacube.tistory.com/424</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 주택청약제도&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;4485&quot; data-origin-height=&quot;1839&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cCuPW2/dJMcacu5F6U/P09mhV7fSkLTXHQrkKI2KK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cCuPW2/dJMcacu5F6U/P09mhV7fSkLTXHQrkKI2KK/img.png&quot; data-alt=&quot;주택청약제도&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cCuPW2/dJMcacu5F6U/P09mhV7fSkLTXHQrkKI2KK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcCuPW2%2FdJMcacu5F6U%2FP09mhV7fSkLTXHQrkKI2KK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;621&quot; height=&quot;255&quot; data-origin-width=&quot;4485&quot; data-origin-height=&quot;1839&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;주택청약제도&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;주택청약제도는 국민의 주택 수급 불균형 문제와 재원 조달 문제를 해결하기 위해 등장한 주택공급 제도이다. 공기업 혹은 민영기업의 주도로 주택이 완공되면 일부 약정된 물량이 분양되는데, 국민은 해당 주택을 분양받기 위해 완공 이전에 청약을 응모할 수 있다. 청약 모집이 완료되면 선발 기준에 따라 일련의 과정을 거쳐 분양자를 선정한다.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;주택청약에 응모하기 위해서는&amp;nbsp;&lt;b&gt;반드시 주택청약종합저축 통장을 가입&lt;/b&gt;해야 하며, 청약통장에 매월 금액을 납입하여&amp;nbsp;&lt;b&gt;최소한의 기간과 납입액을 만족&lt;/b&gt;하면 청약을 신청할 수 있는 기회가 주어진다. 주택청약통장은&amp;nbsp;&lt;b&gt;제1금융권에서 가입&lt;/b&gt;할 수 있고, 합리적인 주택 배분을 위해&amp;nbsp;&lt;b&gt;한 사람이 한 계좌만&lt;/b&gt;&amp;nbsp;생성할 수 있다.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 공공분양&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3373&quot; data-origin-height=&quot;1901&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bfFK18/dJMcajgEE3I/yhjvP9tprQS6PVtSfQnj2k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bfFK18/dJMcajgEE3I/yhjvP9tprQS6PVtSfQnj2k/img.png&quot; data-alt=&quot;공공분양&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bfFK18/dJMcajgEE3I/yhjvP9tprQS6PVtSfQnj2k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbfFK18%2FdJMcajgEE3I%2FyhjvP9tprQS6PVtSfQnj2k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;505&quot; height=&quot;285&quot; data-origin-width=&quot;3373&quot; data-origin-height=&quot;1901&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;공공분양&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;주택분양은 어느 기관의 재원과 주도로 개발이 이루어졌는지에 따라 공공분양과 민간분양으로 구분하는데, 해당 구분에 따라 분양자 선발 기준이 다르게 적용된다. 공공분양은&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;LH한국주택도시공사, SH서울주택도시개발공사&lt;/b&gt;와 같은&lt;b&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;공기업이 주체가 되어 주택을 공급&lt;/b&gt;한다. 많은 국민들이 주거 혜택을 누리는 것을 목표로 하기 때문에 일반적으로 1세대당 &lt;b&gt;전용면적 85m&lt;sup&gt;2&lt;/sup&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;이하인 주택만 취급&lt;/b&gt;하며, 실수요자의 자금 부담을 줄이기 위해 분양가상한제를 적용하므로 공공분양에 당첨되면&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;주변 시세보다 저렴하게 집을 마련&lt;/b&gt;할 수 있다. 이로 인해 경쟁률이 상대적으로 높은 편이며 선발 기준이 까다롭다.&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;또한 정부 정책에 따라 세부 기준과 공급 물량이 자주 바뀌기 때문에 공공분양을 노리고 있다면 유심히 관찰할 필요가 있다. 공공분양은 특별공급과 일반공급으로 나누어 각기 다른 기준으로 당첨자를 선발한다. 이에 대해 자세하게 확인하고 싶다면 아래 링크로 접속해보자.&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3. 민간분양&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3402&quot; data-origin-height=&quot;1906&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/7Jsra/dJMcaihNXLn/5eM58R684KOA3x8B0kTSoK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/7Jsra/dJMcaihNXLn/5eM58R684KOA3x8B0kTSoK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/7Jsra/dJMcaihNXLn/5eM58R684KOA3x8B0kTSoK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F7Jsra%2FdJMcaihNXLn%2F5eM58R684KOA3x8B0kTSoK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;509&quot; height=&quot;285&quot; data-origin-width=&quot;3402&quot; data-origin-height=&quot;1906&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;민간분양은 &lt;b&gt;SK건설&lt;/b&gt;, &lt;b&gt;현대건설&lt;/b&gt;과 같은 &lt;b&gt;민간건설사가 주체가 되어 주택을 공급&lt;/b&gt;한다.&amp;nbsp;공공분양과는 다르게 주택규모에 제한이 없어 1세대당 &lt;b&gt;전용면적 85m&lt;sup&gt;2&lt;/sup&gt; 이상인 주택도 분양&lt;/b&gt;한다. 공공택지에 지어진 민간주택이 아니라면 분양가상한제가 적용되지 않으므로, 주변 시세에 맞춰 분양가가 결정된다. 이로 인해 &lt;b&gt;상대적으로 높은 분양가&lt;/b&gt;를 보여 자금 부담이 크지만, 그만큼 &lt;b&gt;주택의 질과 주변 인프라가 좋은 편&lt;/b&gt;이다. 또한 일반공급 중에서 일부 물량을 추첨제로 할당기 때문에 기본 자격만 갖춘다면 누구든지 지원하여 당첨 기회를 노려볼 수 있다는 것이 장점이다. 민간&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;분양 또한 특별공급과 일반공급으로 나누어 각기 다른 기준으로 당첨자를 선발한다. 이에 대해 자세하게 확인하고 싶다면 아래 링크로 접속해보자.&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;[함께 읽으면 좋은 페이지]&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;참고문헌&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;- 박은병. (2007). 주택청약제도. 행정안전부 국가기록원.&amp;nbsp;&lt;a href=&quot;https://www.archives.go.kr/next/newsearch/listSubjectDescription.do?id=005605&amp;amp;sitePage=&quot; target=&quot;_self&quot;&gt;https://www.archives.go.kr/next/newsearch/listSubjectDescription.do?id=005605&amp;amp;sitePage=&lt;/a&gt;. 2026.01.17.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #333333; font-family: 'Noto Sans Light';&quot;&gt;- 한국부동산원. (2022). 주택청약의 모든 것 2025~2026년 최신 개정판. 조기흠.&lt;/span&gt;&lt;/p&gt;</description>
      <category>ETC/House</category>
      <category>주거</category>
      <category>청약</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/424</guid>
      <comments>https://vedacube.tistory.com/424#entry424comment</comments>
      <pubDate>Fri, 3 Apr 2026 18:00:05 +0900</pubDate>
    </item>
    <item>
      <title>2026년 청년전용 버팀목 전세자금 대학원생 전세금안심대출보증 HUG 대출 연장 후기</title>
      <link>https://vedacube.tistory.com/6</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 전세대출 연장 조건 확인&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3796&quot; data-origin-height=&quot;1196&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bMnvg0/dJMcaadezMe/uWjr9M5HRwxslN2KPlRWk1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bMnvg0/dJMcaadezMe/uWjr9M5HRwxslN2KPlRWk1/img.png&quot; data-alt=&quot;청년전용 버팀목 전제자금 HUG 대출 연장 과정&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bMnvg0/dJMcaadezMe/uWjr9M5HRwxslN2KPlRWk1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbMnvg0%2FdJMcaadezMe%2FuWjr9M5HRwxslN2KPlRWk1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;618&quot; height=&quot;195&quot; data-origin-width=&quot;3796&quot; data-origin-height=&quot;1196&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;청년전용 버팀목 전제자금 HUG 대출 연장 과정&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;전세계약 만기 3개월 전, 주택도시보증공사(HUG)와 주거래 은행으로부터 계약 만료 시 주의사항이 메신저를 통해 안내되었다. 이제 현 거주지에서 &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;전세 계약을 연장할지, 아니면 다른 곳으로 거주지를 옮길지 결정해야 했다. 개인 사정으로 인해 학업이 지연되면서 학교 주변에 계속 거주하기를 희망하기도 했고, 현재 지내고 있는 환경이 너무 좋은 터라 현 거주지에서 전세 계약을 2년 더 연장하기로 결정하였다. 마침 집주인으로부터 퇴실 여부를 확인하는 연락이 왔기에 주택도시기금 홈페이지에서 연장 조건을 확인해보았다.&lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #333333;&quot;&gt;■&amp;nbsp; 주택임대차계약을 체결하고 해당 주택에 전입하여 거주하는 자&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #333333;&quot;&gt;■&amp;nbsp; 대출접수일 현재 민법상 성년인 세대주&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #333333;&quot;&gt;■&amp;nbsp; 세대주를 포함한 전원이 무주택인 자&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;2024년 현 거주지로 이사할 당시 전입 신고까지 마친 상태였기에 대출 연장을 위한 별다른 제약사항은 없었다. 집주인에게 전세 계약을 2년 연장하겠다는 의사를 전달했지만, 집주인은 은행에서 전세대출 연장이 가능할지 먼&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;저 확인해보길 부탁했다. 곧바로 전세대출을 받았던 은행 지점에 연락하니 &lt;b&gt;대출 만기일 기준 두 달 전에 담당자가 배정될 예정&lt;/b&gt;이라 그 시기가 되면 담당자로부터 연락이 갈 것이라고 했다. 대출 만기일은 전세 계약 만기일보다 한 달 뒤로 약정되어 있어, 일단은 전세 계약 만기일 한 달 전까지 기다려보기로 했다. 추후 은행 지점에서 연장 가능 여부를 확인해주더라도 세부 조건을 충족하지 못하면 연장이 불가능할 수 있으니 &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;아래 링크로 접속하여 먼저 가늠해보도록 하자.&lt;/span&gt;&lt;/p&gt;
&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;주택도시기금&quot; data-ke-align=&quot;alignCenter&quot; data-og-description=&quot;주택도시기금 소개, 주택구입(내집마련디딤돌 등), 전세자금, 월세대출, 국민주택채권, 주택청약, 신혼부부대출&quot; data-og-host=&quot;nhuf.molit.go.kr&quot; data-og-source-url=&quot;https://nhuf.molit.go.kr/FP/FP05/FP0502/FP05020307.jsp&quot; data-og-image=&quot;https://blog.kakaocdn.net/dna/Osr1T/dJMb9frz1Kp/AAAAAAAAAAAAAAAAAAAAAGyxl2C5zuOMhH9cgf9PKwI7wAg9fhrjSQ5nxieRsZlp/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&amp;amp;expires=1769871599&amp;amp;allow_ip=&amp;amp;allow_referer=&amp;amp;signature=QeXmX8Cdw5HCZZGPE6DmtjJ1NDc%3D&quot; data-og-url=&quot;http://nhuf.molit.go.kr/&quot;&gt;&lt;a href=&quot;http://nhuf.molit.go.kr/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://nhuf.molit.go.kr/FP/FP05/FP0502/FP05020307.jsp&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://blog.kakaocdn.net/dna/Osr1T/dJMb9frz1Kp/AAAAAAAAAAAAAAAAAAAAAGyxl2C5zuOMhH9cgf9PKwI7wAg9fhrjSQ5nxieRsZlp/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&amp;amp;expires=1769871599&amp;amp;allow_ip=&amp;amp;allow_referer=&amp;amp;signature=QeXmX8Cdw5HCZZGPE6DmtjJ1NDc%3D');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;주택도시기금&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;주택도시기금 소개, 주택구입(내집마련디딤돌 등), 전세자금, 월세대출, 국민주택채권, 주택청약, 신혼부부대출&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;nhuf.molit.go.kr&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;전세 계약 만기 1개월 전, 대출 만기일 기준으로는 2개월이 남은 시점에 주거래 은행에 방문하여 전세대출 연장 상담을 받았다. 시기를 너무 정확이 맞춰서 방문해서였을까, 담당자가 아직 배정되지 않은 상태라 배정되는대로 조만간 연락이 갈 것이라는 얘기를 들었다. 아무런 수확 없이 돌려보내기 미안했는지, 상담원은 대출 연장이 가능할지 가늠할 수 있는 조건을 하나 알려주었다. 청년전용 버팀목 전세자금 대출을 연장할 경우, &lt;b&gt;주택도시보증공사는 현 거주지 혹은 새로운 거주지를 대상으로 보증심사를 다시 실시&lt;/b&gt;하는데, 이때 해당 매물의 가격을 고려하여 다음과 같은 기준으로 적격 여부를 판단한다.&lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #333333;&quot;&gt;( 전세보증금 + 선순위채권 + 선순위임차보증금 )&amp;nbsp; &amp;le;&amp;nbsp; &amp;nbsp;( 주택가격 &amp;times; 담보인정비율 90% )&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;위 기준에 따르면 &lt;b&gt;주택 유형에 따라 산정된 주택 가격의 90%보다 최소한 전세보증금이 작아야 한다.&lt;/b&gt; 거주지에 근저당권이 잡혀있거나 본인보다 먼저 입주하여 전입신고를 마친 임차인이 있다면 이 또한 고려해야 한다. 여기서 &lt;b&gt;주택가격은 아파트나 오피스텔이 아닌 기타주택일 경우 부동산공시가격 알리미에서 공시하는 공동주택가격의 140%에 해당하는 금액&lt;/b&gt;이다. 해당 매물이 경매로 넘어갔을 때 보증금 반환 문제가 없을 매물에만 적격 판정을 내린다고 볼 수 있다. &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;현재 필자가 거주하고 있는 곳은 다수의 1인 원룸으로 구성된 빌라 공동주택이므로 선순위임차보증금은 없을 것이며, 계약 당시처럼 근저당권이 잡혀있지 않다고 가정한다면,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;부동산공시가격 알리미에서 공시하는 공동주택가격의 126%보다 전세보증금이 작으면 적격 판정을 받을 수 있겠다. 부동산공시가격 알리미에 접속하여 현재 거주지 주소를 입력하고 살펴보니 &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;입주 시점과 현 시점에서 주택가격 차이가 미미했다. 집주인이 전세보증금을 올리지 않는다면 무난하게 보증심사를 통과할 것으로 예상했다.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;본인 거주지의 공동주택가격을 확인하고 싶다면 아래 링크로 접속해보자.&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;부동산공시가격 알리미&quot; data-ke-align=&quot;alignCenter&quot; data-og-description=&quot;[멸실 등으로 주소가 변경된경우, &amp;quot;공시기준일 검색&amp;quot;선택 후, 변경 전 주소로 조회하십시오.] [멸실 등으로 주소가 변경된경우, &amp;quot;공시기준일 검색&amp;quot;선택 후, 변경 전 주소로 조회하십시오.]&quot; data-og-host=&quot;www.realtyprice.kr&quot; data-og-source-url=&quot;https://www.realtyprice.kr/notice/town/nfSiteLink.htm&quot; data-og-image=&quot;&quot; data-og-url=&quot;https://www.realtyprice.kr/notice/town/nfSiteLink.htm&quot;&gt;&lt;a href=&quot;https://www.realtyprice.kr/notice/town/nfSiteLink.htm&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://www.realtyprice.kr/notice/town/nfSiteLink.htm&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('\'\'');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;부동산공시가격 알리미&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;[멸실 등으로 주소가 변경된경우, &quot;공시기준일 검색&quot;선택 후, 변경 전 주소로 조회하십시오.] [멸실 등으로 주소가 변경된경우, &quot;공시기준일 검색&quot;선택 후, 변경 전 주소로 조회하십시오.]&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;www.realtyprice.kr&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 은행 전세대출 간편연기 신청&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;은행 지점에 방문한 날로부터 3영업일이 지나자 메신저로 &lt;b&gt;전세대출 간편연기신청 안내문&lt;/b&gt;이 왔다. 전세대출 연기를 희망하는지에 따라 어떤 절차가 필요한지 간단한 안내가 적혀있었다. 필자는 전세대출 연기를 희망하고 있었기에 메신저 하단에 있는 &lt;b&gt;'간편연기신청' 버튼을 눌러 주거래 은행 앱으로 이동&lt;/b&gt;하였다. 앱에서 개인정보와 기타 동의사항을 확인하면 주민등록등본, 소득금액증명원 등 &lt;b&gt;대출심사에 필요한 정보가 자동으로 조회&lt;/b&gt;된다. &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;조회가 완료되자 다음과 같은 정보를 기입하거나 선택할 수 있었다.&lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #333333;&quot;&gt;■&amp;nbsp; 현 거주지 전세계약 유지 여부 (임차보증금 변동 여부 등)&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #333333;&quot;&gt;■&amp;nbsp; 주택도시기금대출 연장 조건 (직전 약정금액 기준 대출금 10% 상환, 혹은 대출금리 0.1% 가산)&lt;br /&gt;&lt;span style=&quot;background-color: #fcfcfc;&quot;&gt;□&amp;nbsp; 임대인(집주인) 변경 여부&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;background-color: #fcfcfc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fcfcfc;&quot;&gt;□&lt;/span&gt;&lt;span style=&quot;background-color: #fcfcfc;&quot;&gt;&amp;nbsp; 공동임차인 존재 여부&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;background-color: #fcfcfc;&quot;&gt;□&amp;nbsp; 국토부 전자계약시스템을 통한 계약체결 여부 (전자계약서, 혹은 종이계약서)&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;background-color: #fcfcfc;&quot;&gt;□&amp;nbsp; 전세 주택 소재지 (수도권, 혹은 비수도권)&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;background-color: #fcfcfc;&quot;&gt;□&amp;nbsp; 전세계약 연장 시 갱신한 임차보증금&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;background-color: #fcfcfc;&quot;&gt;□&amp;nbsp; 연장된 계약종료일&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;background-color: #fcfcfc;&quot;&gt;□&amp;nbsp; 결혼여부&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;background-color: #fcfcfc;&quot;&gt;□&amp;nbsp; 주택보유수&lt;/span&gt;&lt;span style=&quot;background-color: #fcfcfc;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;background-color: #fcfcfc;&quot;&gt;□&amp;nbsp; 본인소득&lt;/span&gt;&lt;span style=&quot;background-color: #fcfcfc;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;background-color: #fcfcfc;&quot;&gt;□&amp;nbsp; 반환보증신청금액 (대출금의 125% 이상, 임차보증금 이하)&lt;/span&gt;&lt;span style=&quot;background-color: #fcfcfc;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;background-color: #fcfcfc;&quot;&gt;□&amp;nbsp; 대출잔액 (연기신청금액)&lt;/span&gt;&lt;span style=&quot;background-color: #fcfcfc;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;필자는 전세계약 만기 3개월 전에 임차보증금 변동은 없되 관리비와 퇴실청소용역비만 증액하는 것으로 집주인과 합의했었기에, 합의 내용을 명시화하여 확정하고자 집주인에게 계약연장 조건을 문자로 보내고 동의를 받았다. 동의를 받은 후에는 &lt;b&gt;계약연장 조건에 맞게 위 정보들을 하나씩 선택&lt;/b&gt;했다. 갱신 정보 입력을 완료하고 앱 하단에 있는 &lt;b&gt;'연기신청 가능금액 확인' 버튼을 누르니&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&lt;b&gt;연기 신청이 가능하다는 안내문&lt;/b&gt;이 나왔다. 마지막으로 보증우대정보를 선택하는 것으로 연기신청이 완료되었다. 담당자 심사에는 1~2주가 소요되고, 추가증빙서류 제출 등과 같은 특이사항이 있는 경우에는 별도로 연락이 갈 것이라고 하기에 은행으로부터 연락이 올 때까지 기다려보기로 했다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: justify;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3. 임대차 계약내용 사실확인&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;전세대출 간편연기 신청을 하고 1영업일이 되니 &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;전세대출 권리조사업체 리파인에서 문자가 왔다.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;2024년 입주 당시 임대차 현장 조사를 나왔던 업체였다. &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;임대차 계약내용 사실확인절차 이행을 위해 콜봇 상담원이 금일 전화할 예정이니 전화를 꼭 받아달라는 &lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&lt;b&gt;안내&lt;/b&gt;였다. 15분 뒤에 문자와 동일한 번호로 전화가 왔다. 전화를 받아보니 콜봇 상담원이 아래와 같은 내용에 예 혹은 아니오로 대답하길 요청했다. 전세계약 연장 정보를 미리 숙지하고 있었던 터라 임대차 계약내용 사실확인은 3분 내외로 짧게 끝났다.&lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #333333;&quot;&gt;■&amp;nbsp; 현 주소지 거주 상태&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #333333;&quot;&gt;■&amp;nbsp; 임대인 이름&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #333333;&quot;&gt;■&amp;nbsp; 보증금 변동 여부&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #333333;&quot;&gt;■&amp;nbsp; 전세계약 연장 시 계약종료일&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #333333;&quot;&gt;■&amp;nbsp; 임대인 전세계약 연장 거부 여부&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #333333;&quot;&gt;■&amp;nbsp; 개인정보&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: justify;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;4. 전자약정서 작성&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;리파인으로부터 연락을 받은 후 5영업일, &lt;b&gt;은행 담당자로부터 대출심사가 완료되었다는 문자&lt;/b&gt;를 받았다. 대출연장을 위한 안내가 전화로 전달될 예정이니 전화를 받으라는 내용이었다. 전세대출 간편연기 신청을 하고 대출심사 완료까지 6영업일 정도 소요된 셈이었다. 문자를 받고 얼마 지나지 않아 은행 담당자로부터 전화가 왔다. 담당자는 간편연기 신청 내역과 소득 변동 여부 등를 간단하게 확인하고 전자약정서 작성을 요청하였다. 전자약정서는 통화 종료 후 메신저를 통해 안내될 예정이니 안내를 따라 당일에 작성하길 권장했다. 마지막으로 전세대출 보증료에 대해 안내 받았다. &lt;b&gt;기존 전세대출 계약이 만료되는 날짜에 전세대출 이자와 더불어 반환보증료와 대출보증료가 자동출금될 예정이니 자동이체일 이전에 반드시 안내한 금액을 계좌에 예치&lt;/b&gt;해두길 당부하였다. 통화가 끝나고 &lt;b&gt;전자약정서 작성에 대한 안내 문자&lt;/b&gt;가 왔다. 문자에 있는 링크를 따라 은행 앱으로 이동하여 약정서 내용을 확인하고 전자서명을 완료하자 대출서류가 접수되었다는 내용의 문자가 왔다. 1영업일 이후 은행 앱에 접속하여 전세자금대출 계좌의 계좌관리 메뉴로 들어가 연기 신청/조회를 확인해보니 실행예정으로 변경되었다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: justify;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;5. 임대차계약서 갱신&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;은행 앱에서 전세자금대출 현황을 조회했을 때 실행예정 상태인 것을 확인하고는 곧바로 집주인에게 연락하였다. 문자로 나누었던 계약연장 조건대로 전세대출이 2년 연장될 예정이니 은행에서 전세대출 연장과 관련하여 연락이 갈 예정이라고 안내해드렸다. 집주인은 계약연장 조건을 임대차계약서로 명시하기 위해 기존 계약이 만료되기 이전에 한 번 만나자고 요청하였다.&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt; 전세계약 만료 5일 전, 집주인을 만나 전세계약 연장을 위한 임대차계약서를 작성하였다. 집주인이 미리 준비한 부동산 임대차계약서 양식에는 매물에 대한 기본적인 정보와 특약사항이 작성되어 있었다. 매물 정보는 기존 계약서와 동일했으며, 특약사항에는&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;기존 계약서와 동일한 특약사항을 유지하되 &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;관리비와 퇴실청소비를 증액한다는 내용이 적혀 있었다. 계약서 내용을 확인하고 서명한 뒤 집주인과 필자의 계약서에&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;간인 서명까지 기입하는 것으로 기존 임대차계약서를 갱신하였다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;6. &lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;주택도시기금 보증료 납부&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;대출연장 예정일 하루 전,&amp;nbsp;메신저로 전세대출 보증료에 대한 안내가 왔다. 다음 날 전세대출 이자와 함께 보증료가 자동으로 출금될 예정이니 자동이체 계좌에 메신저로 안내된 금액을 미리 예치하라는 내용이었다. 금액을 예치하고 &lt;b&gt;대출연장일이 되자 오전 중에 대출이자와 보증료가 자동이체&lt;/b&gt;되었다. 은행 앱에 접속하여 전세자금대출 계좌의 계좌관리 메뉴로 들어가 확인해보니 전자약정서로 작성한 바와 동일하게 대출만기일은 2년 뒤, 대출금리는 1% 가산된 상태로 정보가 갱신되었다. 이로써 모든 대출 연장 과정이 마무리되었다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;[함께 읽으면 좋은 페이지]&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1775134984271&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;2024년 청년전용 버팀목 전세자금 대학원생 전세금안심대출보증 HUG 대출 후기(1)&quot; data-og-description=&quot;1. 청년전용 버팀목 전세자금 대출 전세금이 부족한 청년들을 위해 특별히 만들어진 버팀목 전세자금 대출이다. 기존의 버팀목 전세자금 대출에 비해 대출한도가 높으면서(2024년 1월 기준 전세&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/306&quot; data-og-url=&quot;https://vedacube.tistory.com/306&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/D59lw/dJMb8U8TW8I/2w10tRlkHvNuax8A5KEY20/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/oAsOw/dJMb8ZvBPgW/fHzKLv8uz1CtfSif416RT0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bsZqLK/dJMb8PGwvvc/52XeexDP7QVUdC5VWJ57FK/img.png?width=5786&amp;amp;height=1670&amp;amp;face=0_0_5786_1670&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/306&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/306&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/D59lw/dJMb8U8TW8I/2w10tRlkHvNuax8A5KEY20/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/oAsOw/dJMb8ZvBPgW/fHzKLv8uz1CtfSif416RT0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bsZqLK/dJMb8PGwvvc/52XeexDP7QVUdC5VWJ57FK/img.png?width=5786&amp;amp;height=1670&amp;amp;face=0_0_5786_1670');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;2024년 청년전용 버팀목 전세자금 대학원생 전세금안심대출보증 HUG 대출 후기(1)&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 청년전용 버팀목 전세자금 대출 전세금이 부족한 청년들을 위해 특별히 만들어진 버팀목 전세자금 대출이다. 기존의 버팀목 전세자금 대출에 비해 대출한도가 높으면서(2024년 1월 기준 전세&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1775134989416&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;2024년 청년전용 버팀목 전세자금 대학원생 전세금안심대출보증 HUG 대출 후기(2)&quot; data-og-description=&quot;1. 은행 지점 2차 방문 은행 지점에서 대출 신청을 한지 7영업일 뒤, 대출 심사 결과 전세자금의 80%, 금리 1.8%로 대출이 승인되었다는 연락을 받았다. 대출 약정서를 작성하기 위해 당일에 은행 지&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/312&quot; data-og-url=&quot;https://vedacube.tistory.com/312&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/MAUgX/dJMb9lk7u8H/gVjb70jJwIdtoxJmaLuHfk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/ovKlF/dJMb8PGwvvd/fDGfKqen4xsEMbzQkhsnk0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/ctX3g9/dJMb8869bfo/mj9oRhyVrzBmDlkODBDT8K/img.png?width=5786&amp;amp;height=1670&amp;amp;face=0_0_5786_1670&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/312&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/312&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/MAUgX/dJMb9lk7u8H/gVjb70jJwIdtoxJmaLuHfk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/ovKlF/dJMb8PGwvvd/fDGfKqen4xsEMbzQkhsnk0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/ctX3g9/dJMb8869bfo/mj9oRhyVrzBmDlkODBDT8K/img.png?width=5786&amp;amp;height=1670&amp;amp;face=0_0_5786_1670');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;2024년 청년전용 버팀목 전세자금 대학원생 전세금안심대출보증 HUG 대출 후기(2)&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 은행 지점 2차 방문 은행 지점에서 대출 신청을 한지 7영업일 뒤, 대출 심사 결과 전세자금의 80%, 금리 1.8%로 대출이 승인되었다는 연락을 받았다. 대출 약정서를 작성하기 위해 당일에 은행 지&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;- 주택도시보증공사. (n.d.). 주택가격확인. 주택도시보증공사. &lt;a href=&quot;https://khig.khug.or.kr/websquare/popup.html?w2xPath=/cg/ae/CGAE034P02.xml&amp;amp;popupID=help2&amp;amp;idx=idx10_17301707880495123.524900898353&amp;amp;w2xHome=/login/&amp;amp;w2xDocumentRoot=&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span&gt;https://khig.khug.or.kr/websquare/popup.html?w2xPath=/cg/ae/CGAE034P02.xml&amp;amp;popupID=help2&amp;amp;idx=idx10_17301707880495123.524900898353&amp;amp;w2xHome=/login/&amp;amp;w2xDocumentRoot=&lt;/span&gt;&lt;/a&gt;. 2026.01.27.&lt;/span&gt;&lt;/p&gt;</description>
      <category>ETC/House</category>
      <category>Hug</category>
      <category>대출</category>
      <category>대학원생</category>
      <category>임대</category>
      <category>전세</category>
      <category>전세금안심대출보증</category>
      <category>주거</category>
      <category>청년전용버팀목전세자금대출</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/6</guid>
      <comments>https://vedacube.tistory.com/6#entry6comment</comments>
      <pubDate>Fri, 27 Mar 2026 18:00:14 +0900</pubDate>
    </item>
    <item>
      <title>최적설계 | 다목적 최적설계 문제(2): 가중치 합 방법</title>
      <link>https://vedacube.tistory.com/431</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;1. 최적설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/336&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 설계문제 정식화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/352&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.2. 제약조건의 정규화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/338&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2. 최적성 조건&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/339&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/340&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2. 부등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/341&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3. KKT 최적성 조건&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/346&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 대안 형식과 이계 필요조건&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/317&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3. 선형계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/348&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 심플렉스법&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/354&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1.1. 인위변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/353&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. scipy.optimize.linprog&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/320&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4. 이차계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/103&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. qpsolvers.solve_qp&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 비제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/166&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 최속강하법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/109&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 공액경사법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/122&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 구간감소법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/123&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. 설계문제의 선형화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/130&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.2. 순차 선형계획법 SLP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/80&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.3. 순차 이차계획법 SQP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/396&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.4. 부정확 이동거리 탐색법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/321&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.5. 제약최속강하법 CSD&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 자연 영감 탐색법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/397&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 유전 알고리즘 GA&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/405&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1.1. pygad.GA&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/398&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. 미분 진화 알고리즘 DE&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/156&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2.1. scipy.optimize.differential_evolution&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 다목적 최적설계 문제&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/144&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 파레토 최적점&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/431&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 가중치 합 방법 ★&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/213&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 비지배 정렬 유전 알고리즘 NSGA-II&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/212&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3.1. pymoo.alghrithms.moo.nsga2.NSGA2&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 가중치 합 방법&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;3652&quot; data-origin-height=&quot;1843&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/djZwOZ/dJMcafS1Cv7/JfkhZtKbxtY0aDtU3dz4Y1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/djZwOZ/dJMcafS1Cv7/JfkhZtKbxtY0aDtU3dz4Y1/img.png&quot; data-alt=&quot;가중치 합 방법&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/djZwOZ/dJMcafS1Cv7/JfkhZtKbxtY0aDtU3dz4Y1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdjZwOZ%2FdJMcafS1Cv7%2FJfkhZtKbxtY0aDtU3dz4Y1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;624&quot; height=&quot;315&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;3652&quot; data-origin-height=&quot;1843&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;가중치 합 방법&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;다목적 최적설계에서 가중치 합 방법(weighted sum method)은 &lt;b&gt;가중치 계수를 부여한 목적함수들을 모두 더해 하나의 목적함수로 취급하여 &lt;/b&gt;&lt;b&gt;다목적 최적설계 문제를 단일 최적설계 문제로 &lt;/b&gt;&lt;b&gt;다루는 방법&lt;/b&gt;이다. 가중치 합 방법으로 목적함수를 정의하면 지금까지 단일 최적설계 문제를 풀기 위해 다루었던 접근법을&amp;nbsp;모두 적용할 수 있다. 가중치는 각 목적함수마다 설계자의 선호도와 상대적인 중요도를 반영하여 정성적으로 결정되며, 이를 목적함수에 곱한 뒤 모두 더함으로써 다음과 같은 &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;단일한 목적함수로 나타낼 수 있다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1770303037381&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
U\left(\mathbf{x}\right) = \sum_{i=1}^{k} w_i f_i \left(\mathbf{x}\right)~~~~\textrm{where}~~\sum_{i=1}^{k} w_i = 1,~~0 \leq w_i \leq 1
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} U\left(\mathbf{x}\right) = \sum_{i=1}^{k} w_i f_i \left(\mathbf{x}\right)~~~~\textrm{where}~~\sum_{i=1}^{k} w_i = 1,~~0 \leq w_i \leq 1 \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;가중치 합 방법에는 두 가지 문제가 있으므로 해당 접근법 사용 시 염두에 두어야 한다. 첫 번째로,&amp;nbsp;가중치에는 정성적인 요소가 반영되어 있기 때문에 동일한 다중 최적설계 문제를 다루더라도 설계자의 의도와 설계 조건에 따라서 결과가 다를 수 있다. 이로 인해 &lt;b&gt;초기에 설정한 가중치가 선호도와 중요도를 잘 반영했더라도 그 결과로 얻은 결과가 최적해일지 정량적으로 보장하기는 어렵다.&lt;/b&gt; 이를 보완하기 위해서는 다른 가중치를 부여하여 최적해를 구한 뒤 비교할 필요가 있다. 두 번째로, 파레토 최적점 집합이 볼록하지 않고 오목하다면 최적해를 얻을 수 없다. 따라서 가중치 합 방법을 적용하기 이전에 파레토 최적점 집합이 볼록한지 확인해야 한다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 정량적 가중치 결정 방법&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;가중치 합 방법에서 가중치는 설계자의 의도를 반영하여 정성적으로 결정할 수 있지만, 정량적으로 가중치를 결정하는 방법들도 존재한다. 해당 방법들은 목적함수들을 대상으로 측정한 정량적인 데이터를 기반으로 가중치를 결정한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2.1. 데이터 측정&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;b&gt;각 설계변수마다 임의의 값을 선별하여 다수의 설계대안을 생성하고, 이를 목적함수에 대입하여 그 값을 기록&lt;/b&gt;한다. &lt;i&gt;m&lt;/i&gt;개의 목적함수를 대상으로 &lt;i&gt;n&lt;/i&gt;개의 설계대안을 대입했을 때 얻은 데이터를 행렬로 나타내면 아래와 같다. 아래 식에서 &lt;i&gt;x&lt;sub&gt;ij&lt;/sub&gt;&lt;/i&gt;는 &lt;i&gt;i&lt;/i&gt;번째 목적함수에 &lt;i&gt;j&lt;/i&gt;번째 설계대안을 대입한 결과값을 의미한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1770342353819&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
X= \begin{bmatrix}
x_{11} &amp;amp; \cdots &amp;amp; x_{m1} \\
\vdots &amp;amp; \ddots &amp;amp; \vdots \\
x_{1n} &amp;amp; \cdot &amp;amp; x_{mn} \\
\end{bmatrix}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} X= \begin{bmatrix} x_{11} &amp;amp; \cdots &amp;amp; x_{m1} \\ \vdots &amp;amp; \ddots &amp;amp; \vdots \\ x_{1n} &amp;amp; \cdot &amp;amp; x_{mn} \\ \end{bmatrix} \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;실험으로 수집한 모든 데이터는 다음과 같은 방법으로 정규화하여 0과 1사이의 값을 가지도록 만든다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1770340886853&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
p_{ij} = \frac{x_{ij}}{\sum_{i=1}^{n}x_{ij}}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} p_{ij} = \frac{x_{ij}}{\sum_{i=1}^{n}x_{ij}} \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2.2. 엔트로피 가중치 방법&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;엔트로피 가중치 방법(entropy weight method, EWM)은 &lt;b&gt;목적함수 측정값의 변동성이 클수록 해당 목적함수가 많은 정보를 내포하고 있다고 보고 높은 가중치를 부여&lt;/b&gt;한다. 반대로 변동성이 적다면 설계변수가 변하더라도 가중치 합 방법으로 생성한 목적함수에 기여하는 바가 적으므로 낮은 가중치를 부여한다. 우선 앞서 획득한 실험 데이터를 이용해 &lt;i&gt;i&lt;/i&gt;번째 목적함수의 엔트로피를 아래와 같이 계산한다. 이때 정규화된 실험 데이터값이 0이라면 자연로그를 계산할 수 없으므로 엔트로피를 0으로 결정한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1770341216140&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
E_i = -\frac{\sum_{j=1}^{n}p_{ij} \cdot \textrm{ln}~p_{ij}}{\textrm{ln}~n}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} E_i = -\frac{\sum_{j=1}^{n}p_{ij} \cdot \textrm{ln}~p_{ij}}{\textrm{ln}~n} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;위 식으로 계산한 엔트로피는 0과 1 사이의 값을 가지며, 엔트로피가 클수록 해당 목적함수의 변동성이 크다는 것을 의미한다. 엔트로피를 기반으로 해당 목적함수에 부여할 가중치를 계산하면 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1770341666307&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
w_i = \frac{1-E_i}{\sum_{i=1}^{m}\left(1-E_i\right)}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} w_i = \frac{1-E_i}{\sum_{i=1}^{m}\left(1-E_i\right)} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2.3. CRITIC&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;CRITIC(Criteria Importance Through Intercriteria Correlation)은 &lt;b&gt;목적함수 측정값의 변동성과 함께, 목적함수간의 상관관계를 고려&lt;/b&gt;한다. 엔트로피 가중치 방법처럼 변동성이 높은 목적함수에 대해서는 높은 가중치를 부여하지만, 상관관계가 높은 목적함수에 대해서는 낮은 가중치를 부여하여 중복되는 영향력을 낮춘다. 앞서 획득한 실험 데이터를 이용해 &lt;i&gt;i&lt;/i&gt;번째 목적함수의 표준편차를 계산하면 다음과 같다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1770343784989&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\sigma_i = \sqrt{\frac{\sum_{j=1}^{n} \left(p_{ij} - \overline{p_i}\right)^2}{n}};~~~~i=1~~\textrm{to}~~m
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \sigma_i = \sqrt{\frac{\sum_{j=1}^{n} \left(p_{ij} - \overline{p_i}\right)^2}{n}};~~~~i=1~~\textrm{to}~~m \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;다음으로 목적함수간의 상관관계를 나타내는 상관행렬을 생성한다. 앞서 획득한 실험 데이터를 기반으로 &lt;i&gt;j&lt;/i&gt;번째 목적함수와 &lt;i&gt;k&lt;/i&gt;번째 목적함수간의 상관관계를 계산하면 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1770344207071&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
r_{jk} = \frac{\sum_{i=1}^{n} \left(p_{ji} - \overline{p_j}\right) \left(p_{ki} - \overline{p_k}\right)}{\sqrt{\sum_{i=1}^{n} \left(p_{ji} - \overline{p_j}\right)^2~\sum_{i=1}^{n} \left(p_{ki} - \overline{p_k}\right)^2}};~~~~j,k=1~~\textrm{to}~~m
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} r_{jk} = \frac{\sum_{i=1}^{n} \left(p_{ji} - \overline{p_j}\right) \left(p_{ki} - \overline{p_k}\right)}{\sqrt{\sum_{i=1}^{n} \left(p_{ji} - \overline{p_j}\right)^2~\sum_{i=1}^{n} \left(p_{ki} - \overline{p_k}\right)^2}};~~~~j,k=1~~\textrm{to}~~m \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp; 표준편차와 상관계수를 종합하여 &lt;i&gt;j&lt;/i&gt;번째 목적함수의 CRITIC 계수를 계산하면 다음과 같다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1770344592618&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
H_i = \sigma_i \sum_{j=1}^{n} \left( 1-r_{ij} \right);~~~~i=1~~\textrm{to}~~m
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} H_i = \sigma_i \sum_{j=1}^{n} \left( 1-r_{ij} \right);~~~~i=1~~\textrm{to}~~m \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;마지막으로 해당 목적함수에 부여할 가중치를 계산하면 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1770344679370&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
w_i = \frac{H_i}{\sum_{j=1}^{m}H_j};~~~~i=1~~\textrm{to}~~m
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} w_i = \frac{H_i}{\sum_{j=1}^{m}H_j};~~~~i=1~~\textrm{to}~~m \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;[함께 읽으면 좋은 페이지]&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;-&amp;nbsp;&lt;span style=&quot;color: #222222;&quot;&gt;Arora, J. S. (2016).&amp;nbsp;&lt;/span&gt;&lt;i&gt;Introduction to optimum design&lt;/i&gt;&lt;span style=&quot;color: #222222;&quot;&gt;. Elsevier.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;span style=&quot;background-color: #ffffff; color: #222222; text-align: left;&quot;&gt;- Hosseinzadeh Lotfi, F., Allahviranloo, T., Pedrycz, W., Shahriari, M., Sharafi, H., &amp;amp; Razipour GhalehJough, S. (2023). The criteria importance through inter-criteria correlation (CRITIC) in uncertainty environment. In&amp;nbsp;&lt;/span&gt;&lt;i&gt;Fuzzy decision analysis: multi attribute decision making approach&lt;/i&gt;&lt;span style=&quot;background-color: #ffffff; color: #222222; text-align: left;&quot;&gt;&amp;nbsp;(pp. 309-324). Cham: Springer International Publishing.&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #222222; text-align: left;&quot;&gt;- Zhu, Y., Tian, D., &amp;amp; Yan, F. (2020). Effectiveness of entropy weight method in decision‐making.&amp;nbsp;&lt;/span&gt;&lt;i&gt;Mathematical problems in Engineering&lt;/i&gt;&lt;span style=&quot;background-color: #ffffff; color: #222222; text-align: left;&quot;&gt;,&amp;nbsp;&lt;/span&gt;&lt;i&gt;2020&lt;/i&gt;&lt;span style=&quot;background-color: #ffffff; color: #222222; text-align: left;&quot;&gt;(1), 3564835.&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Optimum Design</category>
      <category>공학</category>
      <category>최적설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/431</guid>
      <comments>https://vedacube.tistory.com/431#entry431comment</comments>
      <pubDate>Fri, 20 Mar 2026 18:00:03 +0900</pubDate>
    </item>
    <item>
      <title>최적설계 | 다목적 최적설계 문제(1): 파레토 최적점</title>
      <link>https://vedacube.tistory.com/144</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;1. 최적설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/336&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 설계문제 정식화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/352&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.2. 제약조건의 정규화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/338&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2. 최적성 조건&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/339&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/340&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2. 부등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/341&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3. KKT 최적성 조건&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/346&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 대안 형식과 이계 필요조건&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/317&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3. 선형계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/348&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 심플렉스법&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/354&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1.1. 인위변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/353&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. scipy.optimize.linprog&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/320&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4. 이차계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/103&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. qpsolvers.solve_qp&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 비제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/166&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 최속강하법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/109&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 공액경사법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/122&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 구간감소법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/123&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. 설계문제의 선형화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/130&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.2. 순차 선형계획법 SLP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/80&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.3. 순차 이차계획법 SQP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/396&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.4. 부정확 이동거리 탐색법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/321&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.5. 제약최속강하법 CSD&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 자연 영감 탐색법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/397&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 유전 알고리즘 GA&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/405&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1.1. pygad.GA&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/398&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. 미분 진화 알고리즘 DE&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/156&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2.1. scipy.optimize.differential_evolution&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 다목적 최적설계 문제&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/144&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 파레토 최적점 ★&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/431&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 가중치 합 방법&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/213&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 비지배 정렬 유전 알고리즘 NSGA-II&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/212&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3.1. pymoo.alghrithms.moo.nsga2.NSGA2&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1. 다목적 최적설계&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;3650&quot; data-origin-height=&quot;1844&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/AuKt9/dJMcaf6uoUF/IfpWdtTMjKekrkIxY6UoL1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/AuKt9/dJMcaf6uoUF/IfpWdtTMjKekrkIxY6UoL1/img.png&quot; data-alt=&quot;다목적 최적설계&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/AuKt9/dJMcaf6uoUF/IfpWdtTMjKekrkIxY6UoL1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FAuKt9%2FdJMcaf6uoUF%2FIfpWdtTMjKekrkIxY6UoL1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;624&quot; height=&quot;315&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;3650&quot; data-origin-height=&quot;1844&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;다목적 최적설계&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;실용적인 대다수 최적설계 문제는&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;기능성과 경제성과 같은 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;여러 목표를 동시에 최적화 해야하는 경우가 많다. 게다가 두 설계목표가 서로 상충된다면 두 목표를 모두 충족시킬 수는 없기 때문에 어떤 설계를 최적점으로 선정할지 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;고민이 필요하다. &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;이와 같이 &lt;b&gt;한 설계에서 두 개 이상의 목적함수를 최적화하는 문제&lt;/b&gt;를 다목적 최적설계 문제라고 부른다. 다목적 최적설계 문제를 정식화하여 나타내면 아래와 같다. 다목적 최적설계 문제에서의 목적함수는 최적화하고자 하는 여러 목적함수들을 포함한 벡터로 나타낸다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1769564202173&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{minimize}~~~~&amp;amp;\mathbf{f}\left ( \mathbf{x} \right ) = \left ( f_1\left(\mathbf{x}\right),f_2\left(\mathbf{x}\right),\cdots ,f_k\left(\mathbf{x}\right) \right ) \\\\
\mathrm{subject~~to}~~~~&amp;amp;h_i\left ( \mathbf{x} \right ) = 0;~~~~i=1~to~p \\\\
&amp;amp;g_i\left ( \mathbf{x} \right ) \leq 0;~~~~i=1~to~m
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{minimize}~~~~&amp;amp;\mathbf{f}\left ( \mathbf{x} \right ) = \left ( f_1\left(\mathbf{x}\right),f_2\left(\mathbf{x}\right),\cdots ,f_k\left(\mathbf{x}\right) \right ) \\\\ \mathrm{subject~~to}~~~~&amp;amp;h_i\left ( \mathbf{x} \right ) = 0;~~~~i=1~to~p \\\\ &amp;amp;g_i\left ( \mathbf{x} \right ) \leq 0;~~~~i=1~to~m \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2. 파레토 최적점&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;2709&quot; data-origin-height=&quot;1769&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b0eATj/dJMcahQPJEN/ff6QKeUV25ONySzq2om1P1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b0eATj/dJMcahQPJEN/ff6QKeUV25ONySzq2om1P1/img.png&quot; data-alt=&quot;파레토 최적점&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b0eATj/dJMcahQPJEN/ff6QKeUV25ONySzq2om1P1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb0eATj%2FdJMcahQPJEN%2Fff6QKeUV25ONySzq2om1P1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;482&quot; height=&quot;315&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;2709&quot; data-origin-height=&quot;1769&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;파레토 최적점&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;제약조건을 만족하는 설계공간의 어떤 설계점에 대해서 &lt;b&gt;다른 목적함수들은 증가시키지 않으면서 적어도 하나의 목적함수를 감소시키는 다른 설계점이 존재하지 않을 때&lt;/b&gt;, 해당 설계점은 파레토 최적해가 된다.&lt;/span&gt;&lt;/blockquote&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;다목적 최적설계 문제는 보통 유일한 해를 가지지 않는다. 해당 문제에서 &lt;b&gt;최적점이 될 수 있는 후보군은 무한히 많거나 최소 한 가지 이상&lt;/b&gt;인데, 이러한 후보군들을 &lt;b&gt;파레토 최적점(Pareto optimality)&lt;/b&gt;이라고 부른다. 다목적 최적설계 문제에서는 해당 문제에서 고려하는 목적함수를 각 축으로 하는 판정기준공간을 도식화할 수 있다. &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;임의의 설계점에 대하여 각 목적함수의 값을 계산하면 판정기준공간에 하나의 점을 표시할 수 있는데, 설계공간에서 제약조건 경계를 따라 분포하는 설계점에 대해 목적함수를 계산하여 판정기준공간으로 옮겨오면 해당 제약조건을 나타내는 곡선을 그릴 수 있다. 위 그림과 같이 모든 제약조건 곡선을 그리고 제약조건을 만족하는 영역을 음영으로 표시하면&amp;nbsp;제약조건을 만족하지 않는 영역과의 경계선이 나타나는데, 해당 곡선이 파레토 최적점의 집합이다. &lt;b&gt;파레토 최적점에 해당하는 설계점들은 모두 해당 문제의 최적점이 될 수 있다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3. 유토피아 점과 절충해&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;2910&quot; data-origin-height=&quot;1769&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/r8Blk/dJMcacorUWZ/thRq9JO9rrMMh5JPOIt1LK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/r8Blk/dJMcacorUWZ/thRq9JO9rrMMh5JPOIt1LK/img.png&quot; data-alt=&quot;유토피아 점과 절충해&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/r8Blk/dJMcacorUWZ/thRq9JO9rrMMh5JPOIt1LK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fr8Blk%2FdJMcacorUWZ%2FthRq9JO9rrMMh5JPOIt1LK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;518&quot; height=&quot;315&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;2910&quot; data-origin-height=&quot;1769&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;유토피아 점과 절충해&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;유토피아 점(Utopia point)은 &lt;b&gt;한 목적함수 외에 다른 목적함수를 고려하지 않고&amp;nbsp;단일 목적 최적설계 문제를 각각 풀었을 때 얻을 수 있는 이상적인 최적점&lt;/b&gt;을 의미한다. 말 그대로 이상적인 설계점이기 때문에 실제로는 실현 불가능한 설계점이다. 따라서 유토피아 점은 판정기준공간에서만 존재하며, 일반적으로 접근 가능한 설계점이 아니다. 하지만 유토피아 점을 기준으로 다중 최적설계 문제에서 실현 가능한 절충해(compromise solution)을 결정할 수 있다. &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;파레토 최적해 집합 중에서 &lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;판정기준공간 기준&lt;/span&gt; 유토피아 점 &lt;i&gt;f&lt;sup&gt;o&lt;/sup&gt;&lt;/i&gt;와 유클리드 거리가 가장 가까운 최적해&lt;/b&gt;를 절충해로 정의한다. 이때 유클리드 거리는 다음과 같이 계산한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1769591318702&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
D\left(\mathbf{x}\right)=\left\|\mathbf{f}\left(\mathbf{x}\right)-\mathbf{f}^o\right\|=\sqrt{\sum_{i=1}^{k}\left [ f_{i}\left(\mathbf{x}\right) -f_i^o \right ]^2}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} D\left(\mathbf{x}\right)=\left\|\mathbf{f}\left(\mathbf{x}\right)-\mathbf{f}^o\right\|=\sqrt{\sum_{i=1}^{k}\left [ f_{i}\left(\mathbf{x}\right) -f_i^o \right ]^2} \end{align}$$&lt;/div&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;4. 목적함수의 정규화&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;다목적 최적설계 문제는 서로 다른 단위와 범위값을 가진 목적함수들을 다루기 때문에, 목적함수간의 비교가 용이하도록 목적함수를 아래와 같은 식을 이용해 정규화할 필요가 있다. 정규화된 목적함수 요소는 0과 1 사이의 값을 가지게 된다. 아래 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;식에서 &lt;i&gt;f&lt;sub&gt;i&lt;/sub&gt;&lt;sup&gt;max&lt;/sup&gt;(&lt;b&gt;x&lt;/b&gt;)&lt;/i&gt;는&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;각 목적함수마다 최적점을 계산하여 해당 설계점에서의 목적함수값을 서로 비교했을 때 가장 큰 값을 의미한다. 물론 해당 값을 구하는 과정에서 유토피아 점 또한 계산할 수 있다. 모든 목적함수가 비슷한 값을 가지는 경우에는 목적함수 정규화 과정을 생략할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1769596258283&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
f_i^{\textrm{norm}} = \frac{f_{i} \left(\mathbf{x}\right) - f_i^o}{f_i^{\textrm{max}} - f_i^o}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} f_i^{\textrm{norm}} = \frac{f_{i} \left(\mathbf{x}\right) - f_i^o}{f_i^{\textrm{max}} - f_i^o} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1774003348408&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 다목적 최적설계 문제(2): 가중치 합 방법&quot; data-og-description=&quot;1. 최적설계 1.1. 설계문제 정식화 1.2. 제약조건의 정규화 2. 최적성 조건 2.1. 등호제약조건 문제 2.2. 부등호제약조건 문제 2.3. KKT 최적성 조건 2.3.1. 대안 형식과 이계 필요조건 3. 선형계획법 3.1. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/431&quot; data-og-url=&quot;https://vedacube.tistory.com/431&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cgYd8k/dJMb9eTOSfJ/1MWB1wbvyp8ClN4qFP0V0k/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/fXk4e/dJMb8YpUCfy/OnCB6d73kt9gZIJDidwHXK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/4CHyp/dJMb8SpG9WH/VLuq8okcDCEfqR7pUM4kT0/img.png?width=3652&amp;amp;height=1843&amp;amp;face=0_0_3652_1843&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/431&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/431&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cgYd8k/dJMb9eTOSfJ/1MWB1wbvyp8ClN4qFP0V0k/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/fXk4e/dJMb8YpUCfy/OnCB6d73kt9gZIJDidwHXK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/4CHyp/dJMb8SpG9WH/VLuq8okcDCEfqR7pUM4kT0/img.png?width=3652&amp;amp;height=1843&amp;amp;face=0_0_3652_1843');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 다목적 최적설계 문제(2): 가중치 합 방법&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 최적설계 1.1. 설계문제 정식화 1.2. 제약조건의 정규화 2. 최적성 조건 2.1. 등호제약조건 문제 2.2. 부등호제약조건 문제 2.3. KKT 최적성 조건 2.3.1. 대안 형식과 이계 필요조건 3. 선형계획법 3.1.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #ffffff; color: #222222; text-align: left;&quot;&gt;Arora, J. S. (2016).&amp;nbsp;&lt;/span&gt;&lt;i&gt;Introduction to optimum design&lt;/i&gt;&lt;span style=&quot;background-color: #ffffff; color: #222222; text-align: left;&quot;&gt;. Elsevier.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Optimum Design</category>
      <category>공학</category>
      <category>최적설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/144</guid>
      <comments>https://vedacube.tistory.com/144#entry144comment</comments>
      <pubDate>Fri, 13 Mar 2026 18:00:45 +0900</pubDate>
    </item>
    <item>
      <title>공학설계 | 기계요소(2): 타이밍벨트 선정 방법(2) - 둘레 길이와 너비</title>
      <link>https://vedacube.tistory.com/432</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1. 선정 방법&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;5787&quot; data-origin-height=&quot;1405&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cnGMAR/dJMcaf6xdoF/MEN9boNulv9qM5T1Ig9Pd1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cnGMAR/dJMcaf6xdoF/MEN9boNulv9qM5T1Ig9Pd1/img.png&quot; data-alt=&quot;타이밍벨트 선정 방법&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cnGMAR/dJMcaf6xdoF/MEN9boNulv9qM5T1Ig9Pd1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcnGMAR%2FdJMcaf6xdoF%2FMEN9boNulv9qM5T1Ig9Pd1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;844&quot; height=&quot;205&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;5787&quot; data-origin-height=&quot;1405&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;타이밍벨트 선정 방법&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;앞서 타이밍벨트의 규격을 결정했다면, 해당 타이밍벨트와 맞물려 움직일 풀리의 톱니 개수와 타이밍벨트의 둘레 길이 등 구체적인 제원을 결정한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1.1. 풀리 톱니 개수 결정&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;아래 표를 참고하여 &lt;b&gt;소형 풀리의 회전수에 따라 소형 풀리의 톱니 개수를 결정&lt;/b&gt;한다. 이때 &lt;b&gt;소형 풀리의 톱니 개수는 표에 있는 값 이상&lt;/b&gt;이어야 한다. 소형 풀리의 제원을 결정했다면 목표 회전비를 고려하여 대형 풀리의 톱니 개수를 결정한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 319px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style4&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 10px;&quot;&gt;
&lt;td style=&quot;background-color: #9b9b9b; width: 25%; height: 20px; text-align: center;&quot; colspan=&quot;2&quot; rowspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;
&lt;td style=&quot;background-color: #9b9b9b; width: 75%; height: 10px; text-align: center;&quot; colspan=&quot;6&quot;&gt;&lt;span style=&quot;color: #ffffff;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;소형 풀리 회전수 (rpm)&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 10px;&quot;&gt;
&lt;td style=&quot;width: 12.5%; height: 10px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;900 이하&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 10px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;900 이상&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1200 이하&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 10px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1200 이상&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1800 이하&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 10px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1800 이상&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;3600 이하&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 10px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;3600 이상&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;4800 이하&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 10px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;4800 이상&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;10000 이하&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;background-color: #9b9b9b; width: 16.3371%; height: 299px; text-align: center;&quot; rowspan=&quot;18&quot;&gt;&lt;span style=&quot;color: #ffffff;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;벨트 종류에 따른&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #ffffff;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;최소 톱니 수&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.66284%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;MXL&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;12&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;15&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;15&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;16&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 8.66284%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;XL&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;11&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;11&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;12&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;16&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;16&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 8.66284%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;L&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;14&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;14&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;16&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;19&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;20&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 8.66284%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;H&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;16&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;18&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;20&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;24&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;24&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 8.66284%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;S2M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;16&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;16&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;18&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;20&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;20&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;20&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 8.66284%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;S3M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;16&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;16&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;18&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;20&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;20&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;20&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 8.66284%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;S5M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;16&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;20&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;24&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;24&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;24&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;26&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 8.66284%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;S8M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;24&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;25&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;28&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;30&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;32&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 8.66284%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;P2M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;14&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;14&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;14&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;16&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;18&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;20&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 8.66284%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;P3M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;14&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;14&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;14&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;18&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;20&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;28&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 8.66284%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;P5M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;18&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;20&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;24&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;28&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;30&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;40&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 8.66284%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;P8M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;22&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;24&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;26&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;28&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;28&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 8.66284%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;T5&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;12&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;14&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;16&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;18&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;18&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 8.66284%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;T10&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;16&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;18&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;20&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;22&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;22&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 8.66284%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2GT&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;12&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;14&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;16&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;18&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;20&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 8.66284%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;3GT&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;14&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;14&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;16&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;20&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;20&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 8.66284%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;5GT&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;18&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;20&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;24&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;28&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;30&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 10px;&quot;&gt;
&lt;td style=&quot;width: 8.66284%; height: 10px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;8YU&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 10px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;26&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 10px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;28&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 10px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;32&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 10px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;36&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 10px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 10px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1.2. 타이밍벨트 둘레 길이 결정&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;5359&quot; data-origin-height=&quot;2887&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/r2zL1/dJMcadU8AU4/0dbr2TKTTc5bJmYdk0Yn00/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/r2zL1/dJMcadU8AU4/0dbr2TKTTc5bJmYdk0Yn00/img.png&quot; data-alt=&quot;타이밍벨트 둘레 길이 결정&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/r2zL1/dJMcadU8AU4/0dbr2TKTTc5bJmYdk0Yn00/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fr2zL1%2FdJMcadU8AU4%2F0dbr2TKTTc5bJmYdk0Yn00%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;734&quot; height=&quot;395&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;5359&quot; data-origin-height=&quot;2887&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;타이밍벨트 둘레 길이 결정&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;설계 조건을 결정하는 단계에서 고려한 잠정 축간 거리 &lt;i&gt;C'&lt;/i&gt;와 대형 풀리의 기준원 &lt;i&gt;Dp&lt;/i&gt;, 소형 풀리의 기준원 &lt;i&gt;dp&lt;/i&gt;를 이용해 &lt;b&gt;타이밍벨트의 잠정 둘레 길이를 아래와 같이 계산&lt;/b&gt;한다. &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;제조사 혹은 발주처의 카탈로그를 살펴보면서 앞서 계산한&lt;span&gt;&amp;nbsp;&lt;b&gt;타이밍&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;벨트 잠정 둘레 길이와 가장 가까운 타이밍벨트 둘레 길이를 확인하고 이를 확정&lt;/b&gt;한다. &lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1770081376962&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
Lp' = 2C' + \frac{\pi\left(Dp+dp\right)}{2} + \frac{\left(Dp-dp\right)^2}{4C'}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} Lp' = 2C' + \frac{\pi\left(Dp+dp\right)}{2} + \frac{\left(Dp-dp\right)^2}{4C'} \end{align}$$&lt;/div&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1.3. 축간 거리 확인&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;5358&quot; data-origin-height=&quot;3180&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cgZB9k/dJMcahDgbN2/XomArcEr38nrl8ceJtu45K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cgZB9k/dJMcahDgbN2/XomArcEr38nrl8ceJtu45K/img.png&quot; data-alt=&quot;축간 거리 확인&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cgZB9k/dJMcahDgbN2/XomArcEr38nrl8ceJtu45K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcgZB9k%2FdJMcahDgbN2%2FXomArcEr38nrl8ceJtu45K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;734&quot; height=&quot;436&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;5358&quot; data-origin-height=&quot;3180&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;축간 거리 확인&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;앞서 확정한 타이밍벨트 둘레 길이 &lt;i&gt;Lp&lt;/i&gt;를 고려하여 소형 풀리와 대형 풀리 사이의&amp;nbsp;&lt;b&gt;정확한 축간 거리를 아래와 같이 계산&lt;/b&gt;한다. 만약 설계 조건을 결정하는 단계에서 고려한 잠정 축간 거리와 그 값이 많이 다르다면 설계를 수정한다.&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1770081516961&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
&amp;amp;C = \frac{b+\sqrt{b^2-8\left(Dp-dp\right)^2}}{8} \\\\
&amp;amp;\textrm{where}~~~~b = 2Lp-\pi\left(Dp+dp\right) 
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} &amp;amp;C = \frac{b+\sqrt{b^2-8\left(Dp-dp\right)^2}}{8} \\\\ &amp;amp;\textrm{where}~~~~b = 2Lp-\pi\left(Dp+dp\right) \end{align}$$&lt;/div&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;축간 거리를 정확하게 계산했더라도 &lt;b&gt;타이밍벨트의 길이에 따른 공차를 고려하여 거리 조정 여유를 설계상으로 확보&lt;/b&gt;해두어야 한다. 아래 링크로 접속하면 타이밍벨트의 규격과 길이에 따라 확보해야할 여유 공간을 확인할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1770129967135&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;전동 타이밍 벨트의 선정 방법 4&quot; data-og-description=&quot;전동 타이밍 벨트는 타이밍 풀리/벨트 선정 자동 계산 툴로 간단하게 선정할 수 있습니다.&quot; data-og-host=&quot;kr.misumi-ec.com&quot; data-og-source-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0102.html?bid=bid_kr_ec_43766_192&quot; data-og-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0102.html&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bDlBaS/dJMb9iICnSk/ddaDPTcMPfID6Jr1taD5U1/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/gjFjf/dJMb9c9ta8X/MCSkPxC0PdtMntUFFIHmrK/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/bpQg5z/dJMb9jOifeP/xr9mesYYvkMygoAa5EVHV1/img.png?width=690&amp;amp;height=756&amp;amp;face=0_0_690_756&quot;&gt;&lt;a href=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0102.html?bid=bid_kr_ec_43766_192&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0102.html?bid=bid_kr_ec_43766_192&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bDlBaS/dJMb9iICnSk/ddaDPTcMPfID6Jr1taD5U1/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/gjFjf/dJMb9c9ta8X/MCSkPxC0PdtMntUFFIHmrK/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/bpQg5z/dJMb9jOifeP/xr9mesYYvkMygoAa5EVHV1/img.png?width=690&amp;amp;height=756&amp;amp;face=0_0_690_756');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;전동 타이밍 벨트의 선정 방법 4&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;전동 타이밍 벨트는 타이밍 풀리/벨트 선정 자동 계산 툴로 간단하게 선정할 수 있습니다.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;kr.misumi-ec.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1.4. 타이밍벨트 너비 결정&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;설계 동력 &lt;i&gt;Pd&lt;/i&gt;, 기준 전동 용량 &lt;i&gt;Ps&lt;/i&gt;, 맞물림 보정 계수 &lt;i&gt;Km&lt;/i&gt;, 기준 벨트 너비 &lt;i&gt;Wp&lt;/i&gt;를 고려하여 &lt;b&gt;타이밍벨트의 잠정 너비를 아래와 같이 계산&lt;/b&gt;한다. 이때 기준 전동 용량은 타이밍벨트 규격별 기준 전동 용량표를 참고하여 소형 풀리의 회전수와 소형 풀리 톱니 개수에 맞게 값을 선택한다. 맞물림 보정 계수와 기준 벨트 폭은 아래에 제시된 식과 표를 참고하여 그 값을 결정한다. &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;제조사 혹은 발주처의 카탈로그를 살펴보면서 앞서 계산한 &lt;b&gt;타이밍벨트 잠정 너비와 가장 가까운 타이밍벨트 너비를 확인하고 이를 확정&lt;/b&gt;한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1770081716808&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
Bw' = \frac{Pd}{Ps \cdot Km} \times Wp
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} Bw' = \frac{Pd}{Ps \cdot Km} \times Wp \end{align}$$&lt;/div&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1.4.1. 타이밍벨트 규격별 기준 전동 용량표&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;타이밍벨트 규격별 기준 전동 용량표는 각 용도별로 아래 링크로 접속하면 확인할 수 있다. 해당 표는 &lt;b&gt;특정 너비에 대한 기준 전동 용량&lt;/b&gt;을 나타낸 것이므로, &lt;b&gt;다른 너비를 가진 타이밍벨트를 고려하고 있다면 표에 기입된 기준 전동 용량 값에 너비 보정 계수 &lt;i&gt;Kb&lt;/i&gt;를 곱하면 된다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;■&amp;nbsp; 경부하 반송용&lt;/b&gt;(MXL, XL, L, H)&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1770083087453&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;전동 타이밍 벨트의 선정 방법 5 -전동 용량표-&quot; data-og-description=&quot;전동 타이밍 벨트의 선정 방법 5 -전동 용량표-&quot; data-og-host=&quot;kr.misumi-ec.com&quot; data-og-source-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0103.html?bid=bid_kr_ec_43766_192&quot; data-og-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0103.html&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/dinICh/dJMb8U8OOfl/qAj9bkok5MfYqc8ObwZkg0/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/hAMyd/dJMb8SXsZGF/S4gfl9kCy5vKJBQFgjfKuK/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/P58lH/dJMb8SpC6GZ/4kjyXTsCelPfkZe1QSQbyk/img.png?width=710&amp;amp;height=510&amp;amp;face=0_0_710_510&quot;&gt;&lt;a href=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0103.html?bid=bid_kr_ec_43766_192&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0103.html?bid=bid_kr_ec_43766_192&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/dinICh/dJMb8U8OOfl/qAj9bkok5MfYqc8ObwZkg0/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/hAMyd/dJMb8SXsZGF/S4gfl9kCy5vKJBQFgjfKuK/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/P58lH/dJMb8SpC6GZ/4kjyXTsCelPfkZe1QSQbyk/img.png?width=710&amp;amp;height=510&amp;amp;face=0_0_710_510');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;전동 타이밍 벨트의 선정 방법 5 -전동 용량표-&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;전동 타이밍 벨트의 선정 방법 5 -전동 용량표-&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;kr.misumi-ec.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;b&gt;■&amp;nbsp; 경부하 반송용&lt;/b&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;(T_)&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1770083224279&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;전동 타이밍 벨트의 선정 방법 9 -전동 용량표-&quot; data-og-description=&quot;전동 타이밍 벨트 선정 방법 9 -전동 용량표-&quot; data-og-host=&quot;kr.misumi-ec.com&quot; data-og-source-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0107.html?bid=bid_kr_ec_43766_192&quot; data-og-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0107.html&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bJcD9M/dJMb84p3Vfi/2BSKIKsx8tlGR8kCF22RYk/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/ceMiJx/dJMb84XTVNV/I2Sa83hQyzuQHmP29iwt41/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/dACVW8/dJMb8QL7bIr/nkWNpYJ73SElo5YPQj1sv1/img.png?width=710&amp;amp;height=500&amp;amp;face=0_0_710_500&quot;&gt;&lt;a href=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0107.html?bid=bid_kr_ec_43766_192&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0107.html?bid=bid_kr_ec_43766_192&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bJcD9M/dJMb84p3Vfi/2BSKIKsx8tlGR8kCF22RYk/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/ceMiJx/dJMb84XTVNV/I2Sa83hQyzuQHmP29iwt41/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/dACVW8/dJMb8QL7bIr/nkWNpYJ73SElo5YPQj1sv1/img.png?width=710&amp;amp;height=500&amp;amp;face=0_0_710_500');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;전동 타이밍 벨트의 선정 방법 9 -전동 용량표-&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;전동 타이밍 벨트 선정 방법 9 -전동 용량표-&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;kr.misumi-ec.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;b&gt;■&amp;nbsp; 고토크 전달용&lt;/b&gt;(S_M) &lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1770083140862&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;전동 타이밍 벨트의 선정 방법 6 -전동 용량표-&quot; data-og-description=&quot;전동 타이밍 벨트의 선정 방법 6 -전동 용량표-&quot; data-og-host=&quot;kr.misumi-ec.com&quot; data-og-source-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0104.html?bid=bid_kr_ec_43766_192&quot; data-og-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0104.html&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/con4Ii/dJMb9cBDjze/Q32VNGGMvYqJzyvSLDTNPk/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/b4g0Lu/dJMb8Z3mqUy/2WiFB9nxvT23Oue9f7S5F1/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/3XTrx/dJMb8WeuLQ7/cqIBKKgIR1WkcHHAqsv9ek/img.png?width=710&amp;amp;height=512&amp;amp;face=0_0_710_512&quot;&gt;&lt;a href=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0104.html?bid=bid_kr_ec_43766_192&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0104.html?bid=bid_kr_ec_43766_192&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/con4Ii/dJMb9cBDjze/Q32VNGGMvYqJzyvSLDTNPk/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/b4g0Lu/dJMb8Z3mqUy/2WiFB9nxvT23Oue9f7S5F1/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/3XTrx/dJMb8WeuLQ7/cqIBKKgIR1WkcHHAqsv9ek/img.png?width=710&amp;amp;height=512&amp;amp;face=0_0_710_512');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;전동 타이밍 벨트의 선정 방법 6 -전동 용량표-&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;전동 타이밍 벨트의 선정 방법 6 -전동 용량표-&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;kr.misumi-ec.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;b&gt;■&amp;nbsp; 고토크 전달용&lt;/b&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;(P_M)&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1770083181431&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;전동　타이밍 벨트의 선정 방법 7　-전동 용량표-&quot; data-og-description=&quot;전동　타이밍 벨트의 선정 방법 7　-전동 용량표-&quot; data-og-host=&quot;kr.misumi-ec.com&quot; data-og-source-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0105.html?bid=bid_kr_ec_43766_192&quot; data-og-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0105.html&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cDZN2q/dJMb8RjW6po/U3vXsbnsIHNEYKkC5CA8K0/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/bwenAs/dJMb8ZvwAnY/7AFXFu3fOWhucuULis5r41/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/bnQOlo/dJMb9fZqugn/Vxz7Yhc3NKryHXLTeo7Kx0/img.png?width=585&amp;amp;height=1658&amp;amp;face=0_0_585_1658&quot;&gt;&lt;a href=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0105.html?bid=bid_kr_ec_43766_192&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0105.html?bid=bid_kr_ec_43766_192&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cDZN2q/dJMb8RjW6po/U3vXsbnsIHNEYKkC5CA8K0/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/bwenAs/dJMb8ZvwAnY/7AFXFu3fOWhucuULis5r41/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/bnQOlo/dJMb9fZqugn/Vxz7Yhc3NKryHXLTeo7Kx0/img.png?width=585&amp;amp;height=1658&amp;amp;face=0_0_585_1658');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;전동　타이밍 벨트의 선정 방법 7　-전동 용량표-&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;전동　타이밍 벨트의 선정 방법 7　-전동 용량표-&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;kr.misumi-ec.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1770083188751&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;전동　타이밍 벨트의 선정 방법 8　-전동 용량표-&quot; data-og-description=&quot;전동　타이밍 벨트의 선정 방법 8　-전동 용량표-&quot; data-og-host=&quot;kr.misumi-ec.com&quot; data-og-source-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0106.html?bid=bid_kr_ec_43766_192&quot; data-og-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0106.html&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bffAyY/dJMb8YpQAug/sgcOI3Jup03lKvOHKUFCMk/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/dd0mKu/dJMb8YpQAuh/HWZ6ZCxBPGYUeneri3AJyK/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/e10lk/dJMb8ZvwAn5/WQLEBMxHoooKhnbvpY1it1/img.png?width=710&amp;amp;height=525&amp;amp;face=0_0_710_525&quot;&gt;&lt;a href=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0106.html?bid=bid_kr_ec_43766_192&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0106.html?bid=bid_kr_ec_43766_192&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bffAyY/dJMb8YpQAug/sgcOI3Jup03lKvOHKUFCMk/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/dd0mKu/dJMb8YpQAuh/HWZ6ZCxBPGYUeneri3AJyK/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/e10lk/dJMb8ZvwAn5/WQLEBMxHoooKhnbvpY1it1/img.png?width=710&amp;amp;height=525&amp;amp;face=0_0_710_525');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;전동　타이밍 벨트의 선정 방법 8　-전동 용량표-&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;전동　타이밍 벨트의 선정 방법 8　-전동 용량표-&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;kr.misumi-ec.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;b&gt;■&amp;nbsp; 고정밀도 위치 결정용&lt;/b&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;(2GT, 3GT)&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1770083264450&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;전동 타이밍 벨트의 선정 방법 9 -전동 용량표-&quot; data-og-description=&quot;전동 타이밍 벨트 선정 방법 9 -전동 용량표-&quot; data-og-host=&quot;kr.misumi-ec.com&quot; data-og-source-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0107.html?bid=bid_kr_ec_43766_192&quot; data-og-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0107.html&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bJcD9M/dJMb84p3Vfi/2BSKIKsx8tlGR8kCF22RYk/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/ceMiJx/dJMb84XTVNV/I2Sa83hQyzuQHmP29iwt41/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/dACVW8/dJMb8QL7bIr/nkWNpYJ73SElo5YPQj1sv1/img.png?width=710&amp;amp;height=500&amp;amp;face=0_0_710_500&quot;&gt;&lt;a href=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0107.html?bid=bid_kr_ec_43766_192&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0107.html?bid=bid_kr_ec_43766_192&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bJcD9M/dJMb84p3Vfi/2BSKIKsx8tlGR8kCF22RYk/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/ceMiJx/dJMb84XTVNV/I2Sa83hQyzuQHmP29iwt41/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/dACVW8/dJMb8QL7bIr/nkWNpYJ73SElo5YPQj1sv1/img.png?width=710&amp;amp;height=500&amp;amp;face=0_0_710_500');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;전동 타이밍 벨트의 선정 방법 9 -전동 용량표-&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;전동 타이밍 벨트 선정 방법 9 -전동 용량표-&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;kr.misumi-ec.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;b&gt;■&amp;nbsp; 고정밀도 위치 결정용&lt;/b&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;(5GT, 8YU)&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1770083282393&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;전동　타이밍 벨트의 선정 방법 10　-전동 용량표-&quot; data-og-description=&quot;전동 타이밍 벨트의 선정방법을 알아봅니다&quot; data-og-host=&quot;kr.misumi-ec.com&quot; data-og-source-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0096.html?bid=bid_kr_ec_43766_192&quot; data-og-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0096.html&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bT2880/dJMb8Z3mqVU/YGr7hIzdlgVleUBpSOvkG0/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/hMJ1D/dJMb8YpQAuV/q24Q1s2sgdn4RkNQ2mFWpK/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/bUDbZt/dJMb9frADKp/GF2W5A8cXyZw9vr5jtqZ20/img.png?width=710&amp;amp;height=482&amp;amp;face=0_0_710_482&quot;&gt;&lt;a href=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0096.html?bid=bid_kr_ec_43766_192&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0096.html?bid=bid_kr_ec_43766_192&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bT2880/dJMb8Z3mqVU/YGr7hIzdlgVleUBpSOvkG0/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/hMJ1D/dJMb8YpQAuV/q24Q1s2sgdn4RkNQ2mFWpK/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/bUDbZt/dJMb9frADKp/GF2W5A8cXyZw9vr5jtqZ20/img.png?width=710&amp;amp;height=482&amp;amp;face=0_0_710_482');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;전동　타이밍 벨트의 선정 방법 10　-전동 용량표-&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;전동 타이밍 벨트의 선정방법을 알아봅니다&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;kr.misumi-ec.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1.4.2. 맞물림 보정 계수&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;맞물림 보정 계수는 소형 풀리 톱니 수 &lt;i&gt;Zd&lt;/i&gt;, 대형 풀리 기준원 &lt;i&gt;Dp&lt;/i&gt;, 소형 풀리 기준원 &lt;i&gt;dp&lt;/i&gt;, 축간 거리 &lt;i&gt;C&lt;/i&gt;를 이용해 맞물림 톱니 수를 아래와 같이 계산하고, 그 값에 해당하는 맞물림 보정 계수를 아래에 제시된 표에서 찾아 그 값을 결정한다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1770081764736&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
&amp;amp;Zm = \frac{Zd \cdot \theta}{360&amp;deg;} \\\\
&amp;amp;\textrm{where}~~~~\theta = 180&amp;deg; - \frac{57.3\left(Dp-dp\right)}{C}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} &amp;amp;Zm = \frac{Zd \cdot \theta}{360&amp;deg;} \\\\ &amp;amp;\textrm{where}~~~~\theta = 180&amp;deg; - \frac{57.3\left(Dp-dp\right)}{C} \end{align}$$&lt;/div&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 55px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style4&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;background-color: #9b9b9b; width: 100%; text-align: center;&quot; colspan=&quot;6&quot;&gt;&lt;span style=&quot;color: #ffffff;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;맞물림 보정 계수 &lt;i&gt;Km&lt;/i&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 16.6667%; height: 21px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;맞물림 톱니 수 &lt;i&gt;Zm&lt;/i&gt;&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;6 이상&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;5&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;3&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; 타이밍벨트 규격이 P_M일 경우 &lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.5&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;타이밍벨트 규격이 P_M이 아닐 경우&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.8&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.2&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1.4.3. 기준 벨트 폭&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;기준 벨트 폭은 아래에 제시된 표를 참고하여 현재 확정한 타이밍벨트 규격에 맞는 값을 결정한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 17px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style4&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;background-color: #9b9b9b; width: 90%; text-align: center;&quot; colspan=&quot;18&quot;&gt;&lt;span style=&quot;color: #ffffff;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;기준 벨트 폭 Wp&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;MXL&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;XL&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;L&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;H&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;S2M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;S3M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;S5M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;S8M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;P2M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;P3M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;P5M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;P8M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;T5&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;T10&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2GT&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;3GT&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;5GT&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;8YU&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;6.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;25.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;25.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;25.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;10&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;60&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;10&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;15&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;10&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;10&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;15&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;20&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1.5. 설계 동력 검토&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;기준 전동 용량 &lt;i&gt;Ps&lt;/i&gt;, 맞물림 보정 계수 &lt;i&gt;Km&lt;/i&gt;, 너비 보정 계수 &lt;i&gt;Kb&lt;/i&gt;를 고려하여 &lt;b&gt;설계 동력이 타이밍벨트가 견딜 수 있는 용량보다 작은지 확인&lt;/b&gt;한다. 이때 너비 보정 계수는 아래에 제시된 표를 참고하여 타이밍벨트의 규격과 너비에 맞는 값을 결정한다. &lt;b&gt;만약 해당 식이 성립하지 않을 경우에는 한 치수 큰 너비를 가진 타이밍벨트 모델로 재선정&lt;/b&gt;한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1770084542528&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
Pd &amp;lt; Ps \cdot Km \cdot Kb
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} Pd &amp;lt; Ps \cdot Km \cdot Kb \end{align}$$&lt;/div&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 1052px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style4&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;background-color: #9b9b9b; width: 100%; text-align: center; height: 21px;&quot; colspan=&quot;4&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #ffffff;&quot;&gt;&lt;b&gt;너비 보정 계수 &lt;i&gt;Kb&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 42px; text-align: center;&quot; rowspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;타이밍벨트 &lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;규격&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 21px; text-align: center;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;타이밍벨트 너비&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 42px; text-align: center;&quot; rowspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;계수&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;호칭&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;mm&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 68px; text-align: center;&quot; rowspan=&quot;4&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;MXL&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;019&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;4.8&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.72&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;025&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;6.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.00&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;037&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;9.5&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.57&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;050&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;12.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.18&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 68px; text-align: center;&quot; rowspan=&quot;4&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;XL&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;025&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;6.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.15&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;031&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;7.9&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.21&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;037&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;9.5&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.28&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;050&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;12.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.42&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 68px; text-align: center;&quot; rowspan=&quot;4&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;L&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;050&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;12.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.42&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;075&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;19.1&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.71&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;100&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;25.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.00&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;150&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;38.1&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.56&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 68px; text-align: center;&quot; rowspan=&quot;4&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;H&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;075&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;19.1&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.71&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;100&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;25.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.00&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;150&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;38.1&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.56&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;200&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;50.8&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.14&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 68px; text-align: center;&quot; rowspan=&quot;4&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;T5&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;100&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;10&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.00&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;150&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;15&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.60&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;200&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;20&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.30&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;250&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;25&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.90&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 102px; text-align: center;&quot; rowspan=&quot;6&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;T10&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;150&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;15&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.60&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;200&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;20&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.30&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;250&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;25&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.90&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;300&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;30&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;3.50&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;400&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;40&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;4.60&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;500&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;50&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;5.80&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 51px; text-align: center;&quot; rowspan=&quot;3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;S2M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;040&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.00&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;060&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.59&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;100&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;10&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.84&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 51px; text-align: center;&quot; rowspan=&quot;3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;S3M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;060&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.00&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;100&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;10&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.79&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;150&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;15&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.84&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 51px; text-align: center;&quot; rowspan=&quot;3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;S5M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;100&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;10&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.00&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;150&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;15&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.59&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;250&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;25&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.84&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 68px; text-align: center;&quot; rowspan=&quot;4&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;S8M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;150&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;15&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.21&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;250&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;25&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.37&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;300&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;30&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.45&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;400&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;40&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.63&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 34px; text-align: center;&quot; rowspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;P2M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;40&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.00&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;60&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.59&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 34px; text-align: center;&quot; rowspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;P3M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;100&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;10&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.78&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;150&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;15&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.84&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 34px; text-align: center;&quot; rowspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;P5M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;100&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;10&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.00&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;150&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;15&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.59&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 34px; text-align: center;&quot; rowspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;P8M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;150&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;15&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.00&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;250&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;25&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.79&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 51px; text-align: center;&quot; rowspan=&quot;3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2GT&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.00&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.67&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;9&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;9&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.67&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 51px; text-align: center;&quot; rowspan=&quot;3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;3GT&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.00&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;9&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;9&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.66&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;15&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;15&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.97&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 51px; text-align: center;&quot; rowspan=&quot;3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;5GT&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;9&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;9&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.53&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;12&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;12&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.76&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;15&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;15&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.00&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 37px; text-align: center;&quot; rowspan=&quot;3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;8YU&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;15&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;15&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.71&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 10px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 10px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;20&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 10px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;20&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 10px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.00&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 10px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 10px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;25&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 10px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;25&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 10px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.29&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;b&gt;고정밀도 위치 결정 타이밍벨트&lt;/b&gt;의 경우에는 위 식에서 길이 보정 계수 KL 또한 고려하여 설계 동력을 검토한다. 이때 길이 보정 계수는 아래에 제시된 표를 참고하여 타이밍벨트의 규격과 너비에 맞는 값을 결정한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1770084631927&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
Pd &amp;lt; Ps \cdot Km \cdot Kb \cdot KL
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} Pd &amp;lt; Ps \cdot Km \cdot Kb \cdot KL \end{align}$$&lt;/div&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 220px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;background-color: #9b9b9b; width: 100%; text-align: center; height: 22px;&quot; colspan=&quot;6&quot;&gt;&lt;span style=&quot;color: #ffffff; font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;길이 보정 계수 &lt;i&gt;KL&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 22px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;계수&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 22px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.80&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 22px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.90&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 22px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.00&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 22px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.10&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 22px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.20&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 44px;&quot;&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2GT 벨트 길이 &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;(mm)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;130 이하&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;131 이상 &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;182 이하&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;183 이상 &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;280 이하&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;281 이상 &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;419 이하&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;420 이상&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 44px;&quot;&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;3GT 벨트 길이 &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;(mm)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;190 이하&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;191 이상&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;260 이하&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;261 이상&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;400 이하&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;401 이상&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;599 이하&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;600 이상&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 44px;&quot;&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;5GT 벨트 길이 &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;(mm)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;440 이하&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;441 이상&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;550 이하&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;551 이상&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;800 이하&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;801 이상&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1100 이하&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1101 이상&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 44px;&quot;&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;8YU 벨트 길이 &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;(mm)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;600 이하&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;601 이상&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;900 이하&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;901 이상&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1250 이하&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1251 이상&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1799 이하&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1800 이상&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2. 장력&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;5358&quot; data-origin-height=&quot;3504&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/uhicc/dJMcagj4nMw/nd5udkTqtpxCSLK2Kqsstk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/uhicc/dJMcagj4nMw/nd5udkTqtpxCSLK2Kqsstk/img.png&quot; data-alt=&quot;타이밍벨트 장력&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/uhicc/dJMcagj4nMw/nd5udkTqtpxCSLK2Kqsstk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fuhicc%2FdJMcagj4nMw%2Fnd5udkTqtpxCSLK2Kqsstk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;757&quot; height=&quot;495&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;5358&quot; data-origin-height=&quot;3504&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;타이밍벨트 장력&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;타이밍벨트에 일정한 장력을 유지하지 않으면 풀리와 타이밍벨트가 제대로 맞물리지 않아 전동 효율이 낮아진다. 이를 방지하기 위해 타이밍벨트 외부 혹은 내부에 아이들러를 배치하고, &lt;b&gt;아이들러가 타이밍벨트를 누르게 하여 일정한 장력을 유지&lt;/b&gt;한다. 이때 타이밍벨트에 과한 장력을 가하면 수명이 짧아지고, 장력을 약하게 가하면 풀리에 높은 토크가 가해질 때 타이밍벨트와 풀리 사이에서 탈조가 발생할 수 있다. 타이밍벨트에 가하는 장력을 정량적으로 관리하는 경우에는 타이밍벨트의 규격과 제원에 따라 아래 식을 활용하여 장력을 관리한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1770130396489&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
Td = \frac{Ti+\frac{t \times Y}{Lp}}{16}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} Td = \frac{Ti+\frac{t \times Y}{Lp}}{16} \end{align}$$&lt;/div&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;위 식은 소형 풀리와 대형 풀리 사이를 잇는 타이밍벨트의 스팬 길이 &lt;i&gt;t&lt;/i&gt;의 중앙부에 아이들러를 배치하여 &lt;b&gt;스팬 길이의 0.016배 길이만큼 눌러 추가 장력을 부가하는 상황&lt;/b&gt;을 가정하였다. 이때 타이밍벨트에 가해진 초기 장력 Ti와 보정 계수 Y는 타이밍벨트 규격과 너비별로 정리된 표를 참고하여 그 값을 선택한다. 초기 장력은 최대값과 권장값 사이의 값을 선택하고, 보정 계수는 표에서 특정한 숫자가 기입되어 있지 않다면 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;기본값으로 1을 선택한다. 선택한 값들을 기반으로 필요 하중을 계산했다면 해당 하중이 형성되도록 아이들러를 배치하여 타이밍벨트에 일정한 장력이 가해지도록 설계한다. &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;아래 링크로 접속하면 타이밍벨트 규격과 너비별 초기 장력과 보정 계수를 확인할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1770132515680&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;전동 타이밍 벨트의 선정 방법 4&quot; data-og-description=&quot;전동 타이밍 벨트는 타이밍 풀리/벨트 선정 자동 계산 툴로 간단하게 선정할 수 있습니다.&quot; data-og-host=&quot;kr.misumi-ec.com&quot; data-og-source-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0102.html?bid=bid_kr_ec_43766_192&quot; data-og-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0102.html&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bDlBaS/dJMb9iICnSk/ddaDPTcMPfID6Jr1taD5U1/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/gjFjf/dJMb9c9ta8X/MCSkPxC0PdtMntUFFIHmrK/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/bpQg5z/dJMb9jOifeP/xr9mesYYvkMygoAa5EVHV1/img.png?width=690&amp;amp;height=756&amp;amp;face=0_0_690_756&quot;&gt;&lt;a href=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0102.html?bid=bid_kr_ec_43766_192&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0102.html?bid=bid_kr_ec_43766_192&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bDlBaS/dJMb9iICnSk/ddaDPTcMPfID6Jr1taD5U1/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/gjFjf/dJMb9c9ta8X/MCSkPxC0PdtMntUFFIHmrK/img.png?width=250&amp;amp;height=250&amp;amp;face=0_0_250_250,https://scrap.kakaocdn.net/dn/bpQg5z/dJMb9jOifeP/xr9mesYYvkMygoAa5EVHV1/img.png?width=690&amp;amp;height=756&amp;amp;face=0_0_690_756');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;전동 타이밍 벨트의 선정 방법 4&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;전동 타이밍 벨트는 타이밍 풀리/벨트 선정 자동 계산 툴로 간단하게 선정할 수 있습니다.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;kr.misumi-ec.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1772195941213&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;공학설계 | 기계요소(2): 타이밍벨트 선정 방법(1) - 규격&quot; data-og-description=&quot;1. 타이밍벨트 구동기가 발생시키는 동력을 원거리에 위치한 기계부품에 전달하는 기계요소로, 두 개의 풀리가 구동기 축과 평행하게 배치된 상태에서 두 풀리에 타이밍벨트를 걸고 한 풀리를 &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/158&quot; data-og-url=&quot;https://vedacube.tistory.com/158&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/oPiAH/dJMb82eKlU5/yzJvDyeYuZ57lH5tf7A7Rk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/fx5pE/dJMb83kqeCB/VKKKlUOV2pHPE0zukrdyXK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/dds82H/dJMb88eXXcl/SkNmv8nBuXn20TvCbE6H1k/img.png?width=3534&amp;amp;height=2163&amp;amp;face=0_0_3534_2163&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/158&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/158&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/oPiAH/dJMb82eKlU5/yzJvDyeYuZ57lH5tf7A7Rk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/fx5pE/dJMb83kqeCB/VKKKlUOV2pHPE0zukrdyXK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/dds82H/dJMb88eXXcl/SkNmv8nBuXn20TvCbE6H1k/img.png?width=3534&amp;amp;height=2163&amp;amp;face=0_0_3534_2163');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;공학설계 | 기계요소(2): 타이밍벨트 선정 방법(1) - 규격&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 타이밍벨트 구동기가 발생시키는 동력을 원거리에 위치한 기계부품에 전달하는 기계요소로, 두 개의 풀리가 구동기 축과 평행하게 배치된 상태에서 두 풀리에 타이밍벨트를 걸고 한 풀리를&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1770104322524&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;공학설계 | 기본설계(1): 시제품 레이아웃과 공학해석&quot; data-og-description=&quot;1. 공학설계 2. 제품기획 2.1. 요구사항목록 3. 개념설계 3.1. 설계문제와 기능구조도 3.2. 동작원리와 설계대안 4. 기본설계 4.1. 시제품 레이아웃과 공학해석 ★ 4.2. 견실최적설계 4.2.1. 문제 정의 4.2.&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/392&quot; data-og-url=&quot;https://vedacube.tistory.com/392&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bcOjE2/dJMb9lL6NX6/oYKn2Qo0HdWGKqn6uDKGr0/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/XWrDE/dJMb8PGrnUq/EffyvVV1M9DVg8y5OAxWYk/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/bycFGK/dJMb8Z3mtpq/gst8uKCespJYIcelyrHWx0/img.png?width=4342&amp;amp;height=2456&amp;amp;face=0_0_4342_2456&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/392&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/392&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bcOjE2/dJMb9lL6NX6/oYKn2Qo0HdWGKqn6uDKGr0/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/XWrDE/dJMb8PGrnUq/EffyvVV1M9DVg8y5OAxWYk/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/bycFGK/dJMb8Z3mtpq/gst8uKCespJYIcelyrHWx0/img.png?width=4342&amp;amp;height=2456&amp;amp;face=0_0_4342_2456');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;공학설계 | 기본설계(1): 시제품 레이아웃과 공학해석&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 공학설계 2. 제품기획 2.1. 요구사항목록 3. 개념설계 3.1. 설계문제와 기능구조도 3.2. 동작원리와 설계대안 4. 기본설계 4.1. 시제품 레이아웃과 공학해석 ★ 4.2. 견실최적설계 4.2.1. 문제 정의 4.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;- MiSUMi. (n.d.). 전동 타이밍 벨트의 선정 방법 3.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;MiSUMi.&amp;nbsp;&lt;a href=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0101.html?bid=bid_kr_ec_43766_192&quot;&gt;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0101.html?bid=bid_kr_ec_43766_192&lt;/a&gt;. 2026.02.03.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;- &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;MiSUMi. (n.d.). 전동 타이밍 벨트의 선정 방법 4. &lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;MiSUMi. &lt;a href=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0102.html?bid=bid_kr_ec_43766_192&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0102.html?bid=bid_kr_ec_43766_192&lt;/a&gt;. 2026.02.04.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Engineering Design</category>
      <category>공학</category>
      <category>공학설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/432</guid>
      <comments>https://vedacube.tistory.com/432#entry432comment</comments>
      <pubDate>Fri, 6 Mar 2026 18:00:29 +0900</pubDate>
    </item>
    <item>
      <title>공학설계 | 기계요소(2): 타이밍벨트 선정 방법(1) - 규격</title>
      <link>https://vedacube.tistory.com/158</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 타이밍벨트&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;5327&quot; data-origin-height=&quot;2174&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cPFmgf/dJMcahiZkc7/jhV2rayHOEqK8Weyjv7mk0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cPFmgf/dJMcahiZkc7/jhV2rayHOEqK8Weyjv7mk0/img.png&quot; data-alt=&quot;타이밍벨트&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cPFmgf/dJMcahiZkc7/jhV2rayHOEqK8Weyjv7mk0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcPFmgf%2FdJMcahiZkc7%2FjhV2rayHOEqK8Weyjv7mk0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;723&quot; height=&quot;295&quot; data-origin-width=&quot;5327&quot; data-origin-height=&quot;2174&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;타이밍벨트&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;b&gt;구동기가 발생시키는 동력을 원거리에 위치한 기계부품에 전달&lt;/b&gt;하는 기계요소로, 두 개의 풀리가 구동기 축과 평행하게 배치된 상태에서 두 풀리에 타이밍벨트를 걸고 한 풀리를 회전시키면&amp;nbsp;&lt;b&gt;풀리와 타이밍벨트의 톱니가 맞물리면서 동력을 전달&lt;/b&gt;한다. 평기어와 동일하게, 동일한 직경과 잇수를 가진 풀리를 사용한다면 동일한 회전속력과 토크를 전달하지만, 서로 다른 직경과 잇수를 가진 풀리를 조합하면 토크를 낮추는 대신 회전속력을 높이거나, 반대로 회전속력을 낮추는 대신 토크를 높일 수 있다.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;두 풀리에 감긴&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;타이밍벨트가 느슨할 경우 풀리와 타이밍벨트가 제대로 맞물리지 않아 효율이 떨어지기 때문에 &lt;b&gt;타이밍벨트를 외부 혹은 내부에서 눌러 장력을 유지하는&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&lt;b&gt;아이들러&lt;/b&gt;를 함께 사용한다. 타이밍벨트와 풀리는 아래 링크로 접속하면 본인이 필요한 제원을 고려하여 구매할 수 있다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;MISUMI | 미스미 종합 Web 카탈로그&quot; data-ke-align=&quot;alignCenter&quot; data-og-description=&quot;&quot; data-og-host=&quot;kr.misumi-ec.com&quot; data-og-source-url=&quot;https://kr.misumi-ec.com/vona2/mech/M1000000000/M1002000000/?KWSearch=%ED%83%80%EC%9D%B4%EB%B0%8D%EB%B2%A8%ED%8A%B8&amp;amp;searchFlow=results2category&amp;amp;cateflow=category2product&quot; data-og-image=&quot;&quot; data-og-url=&quot;https://kr.misumi-ec.com/vona2/mech/M1000000000/M1002000000/?KWSearch=%ED%83%80%EC%9D%B4%EB%B0%8D%EB%B2%A8%ED%8A%B8&amp;amp;cateflow=category2product&amp;amp;searchFlow=results2category&quot;&gt;&lt;a href=&quot;https://kr.misumi-ec.com/vona2/mech/M1000000000/M1002000000/?KWSearch=%ED%83%80%EC%9D%B4%EB%B0%8D%EB%B2%A8%ED%8A%B8&amp;amp;cateflow=category2product&amp;amp;searchFlow=results2category&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://kr.misumi-ec.com/vona2/mech/M1000000000/M1002000000/?KWSearch=%ED%83%80%EC%9D%B4%EB%B0%8D%EB%B2%A8%ED%8A%B8&amp;amp;searchFlow=results2category&amp;amp;cateflow=category2product&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('\'\'');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;MISUMI | 미스미 종합 Web 카탈로그&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;kr.misumi-ec.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 규격&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;4366&quot; data-origin-height=&quot;1318&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c1AcwW/dJMcabpxfq9/pkLBG1wDvPluDAgsUEyqK0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c1AcwW/dJMcabpxfq9/pkLBG1wDvPluDAgsUEyqK0/img.png&quot; data-alt=&quot;타이밍벨트 규격&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c1AcwW/dJMcabpxfq9/pkLBG1wDvPluDAgsUEyqK0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc1AcwW%2FdJMcabpxfq9%2FpkLBG1wDvPluDAgsUEyqK0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;744&quot; height=&quot;225&quot; data-origin-width=&quot;4366&quot; data-origin-height=&quot;1318&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;타이밍벨트 규격&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;타이밍벨트는 동력전달 목적이 단순 반송용인지, 토크 전달용인지, 위치 결정용인지에 따라 다른 모양의 톱니를 가진 타이밍벨트 규격을 사용한다. 타이밍벨트와 동일한 규격을 가진 풀리 또한 해당 타이밍벨트와 동일한 톱니 모양을 가진다. &lt;b&gt;서로 다른 규격을 가진 타이밍벨트와 풀리는 호환되지 않으므로 구매 시 주의가 필요하다.&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2.1. 경부하 반송용&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;경부하 반송용 타이밍벨트는 사다리꼴 치형을 가지고 있다. 큰 토크를 전달하거나&amp;nbsp;위치를 정밀하게 제어하는 기계가 아니라,&amp;nbsp;컨베이어 벨트처럼 단순히 단방향으로 회전하는 기계에 적합하다. 경부하 반송용 타이밍벨트로는&amp;nbsp;인치 단위 피치를 가진 &lt;b&gt;MXL&lt;/b&gt;, &lt;b&gt;XL&lt;/b&gt;, &lt;b&gt;L&lt;/b&gt;, &lt;b&gt;H&lt;/b&gt; 규격, 밀리미터 단위 피치를 가진 &lt;b&gt;T_&lt;/b&gt; 규격(T5, T10)이 있다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2.2. 고부하 반송용&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;고부하 반송용 타이밍벨트 또한 반송용에 적합한 사다리꼴 치형을 가지고 있으며, 앞서 소개한 경부하 반송용 타이밍벨트보다는 1.3배 높은 허용장력을 가지고 있어 무거운 물체를 반송하는 경우에 사용하기 적합하다. 백래시도 적은 편에 속해 경우에 따라서는 위치 결정 용도로도 사용할 수 있다. 고부하 반송용 타이밍벨트로는 밀리미터 단위 피치를 가진 &lt;b&gt;AT_&lt;/b&gt;&amp;nbsp;규격(AT5, AT10)이 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2.3. 고토크 전달용&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;고토크 전달용 타이밍벨트는 큰 토크를 원거리에 위치한 기계부품에 확실하게 전달해야 하는 전동기구나 고속회전기구에 사용하기 적합하다. 백래시도 적은 편이라 위치 결정 용도로도 사용할 수 있다. 고토크 전달용 타이밍벨트로는 S치형을 가진 &lt;b&gt;S_M&lt;/b&gt; 규격(S2M, S3M, S5M, S8M), R치형을 가진 &lt;b&gt;P_M&lt;/b&gt; 규격(P2M, P3M, P5M, P8M)이 있다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2.4. 고정밀도 위치 결정용&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;고정밀도 위치 결정용 타이밍벨트는 H치형을 가지고 있으며, 다른 타이밍벨트 규격에 비해 백래시가 월등하게 적어 위치 결정 용도로 많이 사용된다. 큰 토크를 전달할 필요가 없는 경우라면 전동기구나 고속회전기구에도 사용할 수 있다. 고정밀도 위치 결정용 타이밍벨트로는 &lt;b&gt;_GT&lt;/b&gt;&amp;nbsp;규격(2GT, 3GT, 5GT, 8YU)이 있다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3. 선정 방법&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;5787&quot; data-origin-height=&quot;1405&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bR1K7h/dJMcaaxo2PN/oxumEFkFajQwnwS27IdR31/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bR1K7h/dJMcaaxo2PN/oxumEFkFajQwnwS27IdR31/img.png&quot; data-alt=&quot;타이밍벨트 선정 방법&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bR1K7h/dJMcaaxo2PN/oxumEFkFajQwnwS27IdR31/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbR1K7h%2FdJMcaaxo2PN%2FoxumEFkFajQwnwS27IdR31%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;844&quot; height=&quot;205&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;5787&quot; data-origin-height=&quot;1405&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;타이밍벨트 선정 방법&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;타이밍벨트의 용도에 따라 규격이 다양한 만큼 규격과 제원을 선정할 때 고려해야할 요소가 많다. 기본적으로 타이밍벨트를 이용해 구현하고자 하는 기구의 용도를 결정하고, 이에 적합한 타이밍벨트의 규격과 제원을 선택하는 순서로 이루어진다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3.1. 설계 조건 및 타이밍벨트 규격 임시 결정&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;타이밍벨트를 선정하기에 앞서 아래와 같은 설계 조건을 결정한다. 이 과정에서 &lt;b&gt;타이밍벨트를 반송용, 토크 전달용, 혹은 위치 결정용으로 사용할 것인지 검토&lt;/b&gt;하고 그에 맞는 규격(T_, AT_, S_M, P_M, _GT)을 결정한다.&lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;■&amp;nbsp; 기구 용도&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;■&amp;nbsp; 전동토크&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;■&amp;nbsp; 부하 변동 정도&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;■&amp;nbsp; 1일 가동 시간&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;■&amp;nbsp; 소형 풀리 회전수&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;■&amp;nbsp; 목표 회전비&lt;br /&gt;□&amp;nbsp; 잠정 축간 거리&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt; &lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;□&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; 풀리 직경 제한&lt;/span&gt;&lt;/b&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3.2. 설계동력 계산&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;타이밍벨트가 전달할 전동토크 &lt;i&gt;Tq&lt;/i&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;에 &lt;/span&gt;과부하계수 &lt;i&gt;Ks&lt;/i&gt;를 고려하여 설계동력을 계산한다. 이때 설계동력(kW), 전동토크&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;(N&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&amp;middot;m)&lt;/span&gt;, 소형 풀리 회전속도(rpm) 단위에 주의하자.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1769957634659&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
Pt = Tq \times n \times \frac{2\pi}{60} \times \frac{1}{1000} \times Ks
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} Pt = Tq \times n \times \frac{2\pi}{60} \times \frac{1}{1000} \times Ks \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;과부하계수는 부하 보정 계수 &lt;i&gt;Ko&lt;/i&gt;, 회전비 보정 계수 &lt;i&gt;&lt;span style=&quot;color: #333333;&quot;&gt;Kr&lt;/span&gt;&lt;/i&gt;&amp;nbsp;, 아이들러 보정 계수 &lt;i&gt;&lt;span style=&quot;color: #333333;&quot;&gt;Ki&lt;/span&gt;&lt;/i&gt;, 운전 시간 보정 계수 &lt;span style=&quot;color: #333333;&quot;&gt;&lt;i&gt;Kh&lt;/i&gt;, 기동 정지 보정 계수 &lt;i&gt;Km&lt;/i&gt;을&lt;/span&gt;&amp;nbsp;고려하여 다음과 같이 결정된다.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1769958263791&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
Ks = Ko + Kr + Ki + Kh + Km
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} Ks = Ko + Kr + Ki + Kh + Km \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;각 보정 계수는 앞서 임시로 결정한 타이밍벨트 규격에 따라 각각 다른 기준으로 선택된다. 이때 부하 보정 계수는 본인이 설계하는 기구의 용도와 유사한 부하로 가동할 것 같은 기구의 값으로 결정한다. 타이밍벨트 규격별로 제시된 아래 표에서 특정 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;보정 계수를 결정하기 위한 표가 없다면 해당 값은 0으로 결정한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3.2.1. 경부하/고부하 반송용&lt;/b&gt;(&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;MXL, XL, L, H,&amp;nbsp;&lt;/span&gt;T_, AT_)&lt;b&gt;, 고토크 전달용&lt;/b&gt;(S_M)&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 214px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style4&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;background-color: #9b9b9b; width: 99.9999%; text-align: center; height: 22px;&quot; colspan=&quot;7&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #ffffff;&quot;&gt;부하 보정 계수 &lt;i&gt;Ko&lt;/i&gt;&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 19.9833%; height: 73px; text-align: center;&quot; rowspan=&quot;4&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;기구 용도&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;height: 21px; text-align: center; width: 80.0166%;&quot; colspan=&quot;6&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;원동기&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;width: 40.0665%; text-align: center; height: 22px;&quot; colspan=&quot;3&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; 최대 출력이 정격의 300% 이하 &lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 39.9501%; text-align: center; height: 22px;&quot; colspan=&quot;3&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; 최대 출력이 정격의 300% 초과 &lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 40.0665%; height: 17px; text-align: center;&quot; colspan=&quot;3&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;운전시간&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 39.9501%; height: 17px; text-align: center;&quot; colspan=&quot;3&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;운전시간&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 13px;&quot;&gt;
&lt;td style=&quot;width: 13.123%; height: 13px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;단속 사용&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1일 3~5시간&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.1229%; height: 13px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; 단속 사용&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1일 8~12시간 &lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.8206%; height: 13px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; 단속 사용&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1일 16~24시간 &lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.1228%; height: 13px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; 단속 사용&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1일 3~5시간 &lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.8207%; height: 13px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; 단속 사용&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1일 8~12시간 &lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.0066%; height: 13px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; 단속 사용&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1일 16~24시간 &lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 19.9833%; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;전시&amp;nbsp;기구,&amp;nbsp;영사기,&amp;nbsp;계측기기,&amp;nbsp;의료기기 &lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.123%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.1229%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.2&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.8206%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.1228%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.2&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.8207%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.0066%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 19.9833%; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;청소기,&amp;nbsp;재봉틀,&amp;nbsp;사무기,&amp;nbsp;목공&amp;nbsp;선반,&amp;nbsp;띠톱반&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.123%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.2&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.1229%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.8206%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.1228%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.8207%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.0066%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 19.9833%; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;경하중용&amp;nbsp;벨트&amp;nbsp;컨베이어,&amp;nbsp;포장기,&amp;nbsp;체&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.123%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.3&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.1229%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.5&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.8206%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.1228%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.5&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.8207%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.0066%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.9&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 19.9833%; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;액체&amp;nbsp;교반기,&amp;nbsp;드릴링&amp;nbsp;머신,&amp;nbsp;선반,&amp;nbsp;나사&amp;nbsp;절단&amp;nbsp;선반,&amp;nbsp;둥근&amp;nbsp;톱반,&amp;nbsp;평삭반,&amp;nbsp;세탁기,&amp;nbsp;제지&amp;nbsp;기계(펄프&amp;nbsp;제외),&amp;nbsp;인쇄&amp;nbsp;기계&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.123%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.1229%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.8206%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.1228%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.8207%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.0066%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.0&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 19.9833%; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;교반기(시멘트,&amp;nbsp;점성체),&amp;nbsp;중하중용&amp;nbsp;벨트&amp;nbsp;컨베이어(광석,&amp;nbsp;석탄,&amp;nbsp;모래),&amp;nbsp;연삭반,&amp;nbsp;형삭반,&amp;nbsp;보링반,&amp;nbsp;밀링&amp;nbsp;머신,&amp;nbsp;컴프레서(원심식,&amp;nbsp;리시프로식),&amp;nbsp;진동&amp;nbsp;체,&amp;nbsp;섬유&amp;nbsp;기계(정경기,&amp;nbsp;와인더),&amp;nbsp;회전&amp;nbsp;압축기&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.123%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.5&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.1229%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.8206%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.9&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.1228%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.8207%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.9&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.0066%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.1&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 19.9833%; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;고하중용&amp;nbsp;컨베이어(에이프런,&amp;nbsp;팬,&amp;nbsp;버킷,&amp;nbsp;엘리베이터),&amp;nbsp;추출&amp;nbsp;펌프,&amp;nbsp;팬,&amp;nbsp;블로어(원심,&amp;nbsp;흡입,&amp;nbsp;배기),&amp;nbsp;발전기,&amp;nbsp;여자기,&amp;nbsp;호이스트,&amp;nbsp;고무&amp;nbsp;가공기(캘린더,&amp;nbsp;롤,&amp;nbsp;압축기),&amp;nbsp;섬유&amp;nbsp;기계(직기,&amp;nbsp;정방기,&amp;nbsp;연사기,&amp;nbsp;관권기)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.123%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.1229%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.8206%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.1228%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.8207%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.0066%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.2&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 19.9833%; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;원심&amp;nbsp;분리기,&amp;nbsp;컨베이어(플라이트,&amp;nbsp;스크류),&amp;nbsp;해머&amp;nbsp;밀,&amp;nbsp;제지&amp;nbsp;기계(펄퍼&amp;nbsp;피더)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.123%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.1229%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.9&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.8206%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.1&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.1228%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.9&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.8207%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.1&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 13.0066%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.3&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 135px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style4&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;background-color: #9b9b9b; width: 100%; height: 21px; text-align: center;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;color: #ffffff; font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;회전비 보정 계수 &lt;i&gt;Kr&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;회전비&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;계수&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.00&amp;nbsp;이상&amp;nbsp;1.25&amp;nbsp;미만&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.25&amp;nbsp;이상&amp;nbsp;1.75&amp;nbsp;미만&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.1&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.75&amp;nbsp;이상&amp;nbsp;2.50&amp;nbsp;미만&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.2&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.50&amp;nbsp;이상&amp;nbsp;3.50&amp;nbsp;미만&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.3&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;3.50&amp;nbsp;이상&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.4&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 106px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style4&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;background-color: #9b9b9b; width: 100%; text-align: center; height: 21px;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;color: #ffffff;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;아이들러 보정 계수 &lt;i&gt;Ki&lt;/i&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;아이들러 사용 위치&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;계수&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;벨트의&amp;nbsp;느슨한&amp;nbsp;쪽에서,&amp;nbsp;벨트&amp;nbsp;안쪽부터&amp;nbsp;사용하는&amp;nbsp;경우&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;벨트의&amp;nbsp;느슨한&amp;nbsp;쪽에서,&amp;nbsp;벨트&amp;nbsp;바깥쪽부터&amp;nbsp;사용하는&amp;nbsp;경우&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.1&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;벨트의&amp;nbsp;팽팽한&amp;nbsp;쪽에서,&amp;nbsp;벨트&amp;nbsp;안쪽부터&amp;nbsp;사용하는&amp;nbsp;경우&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.1&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;벨트의&amp;nbsp;팽팽한&amp;nbsp;쪽에서,&amp;nbsp;벨트&amp;nbsp;바깥쪽부터&amp;nbsp;사용하는&amp;nbsp;경우&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.2&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt; &lt;b&gt;3.2.2. 고토크 전달용&lt;/b&gt;(P_M) &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 136px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style4&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;background-color: #009a87; width: 100%; height: 17px; text-align: center;&quot; colspan=&quot;4&quot;&gt;&lt;span style=&quot;color: #ffffff; font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;부하 보정 계수&amp;nbsp;&lt;i&gt;Ko&lt;/i&gt;&lt;/b&gt; &lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 51.0464%; height: 34px; text-align: center;&quot; rowspan=&quot;2&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;기구 용도&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 48.9536%; height: 17px; text-align: center;&quot; colspan=&quot;3&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;원동기&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 16.628%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;최대 출력이 &lt;br /&gt;정격의 200% 이하&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.1628%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;최대&amp;nbsp;출력이&amp;nbsp;&lt;br /&gt;정격의&amp;nbsp;200%&amp;nbsp;초과&amp;nbsp;&lt;br /&gt;300%&amp;nbsp;이하&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.1628%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;최대&amp;nbsp;출력이&amp;nbsp;&lt;br /&gt;정격의&amp;nbsp;300%&amp;nbsp;초과&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 51.0464%; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;계기류,&amp;nbsp;카메라&amp;nbsp;장치,&amp;nbsp;레이더,&amp;nbsp;의료기기,&amp;nbsp;영사기&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.628%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.1628%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.2&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.1628%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 51.0464%; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;경하중용&amp;nbsp;벨트&amp;nbsp;컨베이어,&amp;nbsp;경하중용&amp;nbsp;체인&amp;nbsp;컨베이어,&amp;nbsp;드릴링&amp;nbsp;머신,&amp;nbsp;선반,&amp;nbsp;나사&amp;nbsp;절단&amp;nbsp;선반,&amp;nbsp;전동&amp;nbsp;타이프라이터,&amp;nbsp;계산기,&amp;nbsp;복사기,&amp;nbsp;인쇄기,&amp;nbsp;커터,&amp;nbsp;지절기,&amp;nbsp;프린터,&amp;nbsp;교반기,&amp;nbsp;캘린더&amp;nbsp;건조기,&amp;nbsp;선반,&amp;nbsp;띠톱반,&amp;nbsp;대패,&amp;nbsp;둥근&amp;nbsp;톱반,&amp;nbsp;플레이너,&amp;nbsp;액체&amp;nbsp;믹서,&amp;nbsp;빵&amp;nbsp;제조기,&amp;nbsp;가루&amp;nbsp;반죽기,&amp;nbsp;체(드럼,&amp;nbsp;원추),&amp;nbsp;재봉틀&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.628%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.3&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.1628%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.5&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.1628%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.7&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 51.0464%; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;중하중용&amp;nbsp;벨트&amp;nbsp;컨베이어(광석,&amp;nbsp;석탄,&amp;nbsp;모래),&amp;nbsp;엘리베이터,&amp;nbsp;보링&amp;nbsp;밀,&amp;nbsp;연삭반,&amp;nbsp;밀링&amp;nbsp;머신,&amp;nbsp;세이버,&amp;nbsp;금속&amp;nbsp;톱반,&amp;nbsp;튀김기,&amp;nbsp;건조기,&amp;nbsp;세탁기(탈수기&amp;nbsp;포함),&amp;nbsp;굴삭기,&amp;nbsp;믹서,&amp;nbsp;조립기,&amp;nbsp;펌프(과권,&amp;nbsp;기어,&amp;nbsp;로터리),&amp;nbsp;컴프레서(원심식),&amp;nbsp;교반기,&amp;nbsp;점성&amp;nbsp;믹서,&amp;nbsp;원심식&amp;nbsp;강제&amp;nbsp;송풍기,&amp;nbsp;발전기,&amp;nbsp;일반&amp;nbsp;고무&amp;nbsp;기계,&amp;nbsp;체(전동식)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.628%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.1628%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.1628%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.0&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 51.0464%; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;고하중용&amp;nbsp;컨베이어(에이프런,&amp;nbsp;버킷,&amp;nbsp;플라이트,&amp;nbsp;스크류),&amp;nbsp;호이스트,&amp;nbsp;재단&amp;nbsp;프레스,&amp;nbsp;타해기,&amp;nbsp;펄프&amp;nbsp;제조기,&amp;nbsp;직기,&amp;nbsp;방사기,&amp;nbsp;연사기,&amp;nbsp;혼화기,&amp;nbsp;원심&amp;nbsp;분리기,&amp;nbsp;송풍기(축류,&amp;nbsp;광산용,&amp;nbsp;루츠),&amp;nbsp;일반&amp;nbsp;건설&amp;nbsp;기계,&amp;nbsp;해머&amp;nbsp;밀,&amp;nbsp;롤갱&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.628%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.1628%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.1628%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.2&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 51.0464%; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;크랭크&amp;nbsp;프레스,&amp;nbsp;픔프(리시프로),&amp;nbsp;컴프레서(왕복식),&amp;nbsp;분쇄기(볼,&amp;nbsp;로드,&amp;nbsp;소석)&amp;nbsp;등의&amp;nbsp;토목&amp;nbsp;광산&amp;nbsp;기계,&amp;nbsp;고무&amp;nbsp;믹서&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.628%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.1628%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.2&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.1628%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.5&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 153px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style4&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;background-color: #009a87; width: 100%; text-align: center; height: 22px;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;color: #ffffff; font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;회전비 보정 계수&amp;nbsp;&lt;i&gt;Kr&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;회전비&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;계수&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 22px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: center;&quot;&gt;1.00&amp;nbsp;이상&amp;nbsp;1.25&amp;nbsp;미만&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 22px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 22px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: center;&quot;&gt;1.25 이상 1.75 미만&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 22px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.1&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 22px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: center;&quot;&gt;1.70 이상 2.50 미만&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 22px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.2&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 22px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: center;&quot;&gt;2.50 이상 3.50 미만&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 22px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.3&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 22px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: center;&quot;&gt;3.50 이상&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 22px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.4&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 98px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style4&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;background-color: #009a87; text-align: center; height: 22px; width: 175%;&quot; colspan=&quot;3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #ffffff;&quot;&gt; &lt;b&gt;아이들러 보정 계수&amp;nbsp;&lt;i&gt;Ki&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 42px;&quot; rowspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;아이들러 사용 위치&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 125%; text-align: center; height: 21px;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;계수&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;내측&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 100%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;외측&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;벨트의 느슨한 쪽&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 100%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.1&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;벨트의 팽팽한 쪽&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.1&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 100%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.2&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style4&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;background-color: #009a87; width: 100%; text-align: center;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;color: #ffffff;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;운전 시간 보정 계수 &lt;i&gt;Kh&lt;/i&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;운전 시간&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;계수&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1일 10시간 이상 가동&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.1&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1일 20시간 이상 가동&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.2&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;연간 500시간 이하 가동 (계절 운전 등)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-0.2&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3.2.3. 고정밀도 위치 결정용&lt;/b&gt;(2GT, 3GT)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 373px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;background-color: #000000; width: 100%; height: 17px; text-align: center;&quot; colspan=&quot;5&quot;&gt;&lt;span style=&quot;color: #ffffff;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;부하 보정 계수 &lt;i&gt;Ko&lt;/i&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 36.7442%; height: 34px; text-align: center;&quot; colspan=&quot;2&quot; rowspan=&quot;2&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;기구 용도&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 63.2558%; height: 17px; text-align: center;&quot; colspan=&quot;3&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;원동기&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 19.186%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; 최대 출력이 &lt;br /&gt;정격의 150% 이하 &lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 24.4186%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; 최대 출력이&lt;br /&gt;정격의 150% 초과 250% 이하&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.6512%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; 최대 출력이&lt;br /&gt;정격의 250% 초과&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 16px;&quot;&gt;
&lt;td style=&quot;width: 12.7907%; height: 16px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;사무기&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 23.9535%; height: 16px; text-align: left;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;프린터,&amp;nbsp;팩시밀리,&amp;nbsp;복사기&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.186%; height: 16px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 24.4186%; height: 16px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.2&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.6512%; height: 16px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 12.7907%; height: 34px; text-align: center;&quot; rowspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;가전&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 23.9535%; height: 17px; text-align: left;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;주스기&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 24.4186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.6512%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 23.9535%; height: 17px; text-align: left;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;청소기&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 24.4186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.2&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.6512%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 12.7907%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;금융 기계&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 23.9535%; height: 17px; text-align: left;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;환전기,&amp;nbsp;승차권&amp;nbsp;판매기,&amp;nbsp;개찰기,&lt;br /&gt;은행창구기&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.3&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 24.4186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.6512%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.5&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 12.7907%; height: 68px; text-align: center;&quot; rowspan=&quot;4&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;식품, 제약, &lt;br /&gt;의료기계&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 23.9535%; height: 17px; text-align: left;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;제빵기&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.2&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 24.4186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.6512%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 23.9535%; height: 17px; text-align: left;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;믹서기, 조립기&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 24.4186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.6512%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 23.9535%; height: 17px; text-align: left;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;원심분리기&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.5&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 24.4186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.6512%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.9&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 23.9535%; height: 17px; text-align: left;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;의료기계, 계측기계&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 24.4186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.2&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.6512%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 12.7907%; height: 51px; text-align: center;&quot; rowspan=&quot;3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;공작기&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 23.9535%; height: 17px; text-align: left;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;드릴&amp;nbsp;프레스&amp;nbsp;선반&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.2&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 24.4186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.6512%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 23.9535%; height: 17px; text-align: left;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;연삭반,&amp;nbsp;밀링반&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.3&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 24.4186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.5&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.6512%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.7&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 23.9535%; height: 17px; text-align: left;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;목공&amp;nbsp;선반&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.2&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 24.4186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.6512%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 12.7907%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;인쇄 제본&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 23.9535%; height: 17px; text-align: left;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;인쇄기,&amp;nbsp;제본기,&amp;nbsp;커터&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.2&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 24.4186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.6512%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 12.7907%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;섬유 기계&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 23.9535%; height: 17px; text-align: left;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;방직기,&amp;nbsp;방적기&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.3&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 24.4186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.5&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.6512%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.7&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 12.7907%; height: 34px; text-align: center;&quot; rowspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;재봉틀&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 23.9535%; height: 17px; text-align: left;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;재봉틀&amp;nbsp;가정용&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 24.4186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.2&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.6512%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 23.9535%; height: 17px; text-align: left;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;재봉틀 공업용&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 24.4186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.6512%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 12.7907%; height: 34px; text-align: center;&quot; rowspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;벨트 컨베이어,&lt;br /&gt;포장기&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 23.9535%; height: 17px; text-align: left;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;벨트&amp;nbsp;컨베이어&amp;nbsp;경량물&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.1&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 24.4186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.3&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.6512%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.5&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 23.9535%; height: 17px; text-align: left;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;포장기&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.2&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 24.4186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.6512%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 12.7907%; height: 34px; text-align: center;&quot; rowspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;필름, &lt;br /&gt;와이어 제조기&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 23.9535%; height: 17px; text-align: left;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;캘린더, 압출기&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 24.4186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.6512%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 23.9535%; height: 17px; text-align: left;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;정선기, 신선기, 연선기&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 24.4186%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 19.6512%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 153px;&quot; border=&quot;1&quot; data-ke-style=&quot;style4&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;background-color: #000000; width: 100%; text-align: center; height: 22px;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;color: #ffffff; font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;회전비 보정 계수&amp;nbsp;&lt;i&gt;Kr&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;회전비&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;계수&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 22px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: center;&quot;&gt;1.00&amp;nbsp;이상&amp;nbsp;1.25&amp;nbsp;미만&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 22px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 22px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: center;&quot;&gt;1.25 이상 1.75 미만&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 22px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.1&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 22px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: center;&quot;&gt;1.70 이상 2.50 미만&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 22px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.2&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 22px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: center;&quot;&gt;2.50 이상 3.50 미만&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 22px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.3&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 22px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: center;&quot;&gt;3.50 이상&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 22px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.4&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 98px;&quot; border=&quot;1&quot; data-ke-style=&quot;style4&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;background-color: #000000; text-align: center; height: 22px; width: 175%;&quot; colspan=&quot;3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #ffffff;&quot;&gt;&lt;b&gt;아이들러 보정 계수&amp;nbsp;&lt;i&gt;Ki&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 42px;&quot; rowspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;아이들러 사용 위치&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 125%; text-align: center; height: 21px;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;계수&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;내측&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 100%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;외측&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;벨트 풀림 측&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 100%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.1&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;벨트 당김 측&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.1&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 100%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.2&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 132px;&quot; border=&quot;1&quot; data-ke-style=&quot;style4&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;background-color: #000000; ; width: 100%; text-align: center; height: 22px;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;color: #ffffff;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;운전 시간 보정 계수&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;i&gt;Kh&lt;/i&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 22px;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;운전 시간&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 22px;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;계수&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 22px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;10시간 이상 미만 (매일)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 22px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 22px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;10~16시간 연속 운전 (매일)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 22px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.2&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 22px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;16~24시간 연속 운전 (매일)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 22px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.4&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 22px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;연간 300시간 이하 운전 (계절적 운전 등)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 22px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-0.2&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 110px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style4&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;background-color: #000000; ; width: 100%; text-align: center; height: 22px;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;color: #ffffff; font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;기동 정지 보정 계수&amp;nbsp;&lt;i&gt;Km&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 22px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;기동 정지 횟수&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 22px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;계수&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 22px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1일&amp;nbsp;100회&amp;nbsp;미만&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 22px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.5&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 22px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1일&amp;nbsp;100회&amp;nbsp;이상&amp;nbsp;1,000회&amp;nbsp;미만&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 22px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.0&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 22px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1일&amp;nbsp;1,000회&amp;nbsp;이상&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 22px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.5&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt; &lt;b&gt;3.2.4. 고정밀도 위치 결정용&lt;/b&gt;(5GT, 8YU) &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 536px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style4&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;background-color: #006dd7; width: 99.9997%; text-align: center; height: 21px;&quot; colspan=&quot;7&quot;&gt;&lt;span style=&quot;color: #ffffff;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;부하 보정 계수 &lt;i&gt;Ko&lt;/i&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 25.0831%; text-align: center; height: 105px;&quot; colspan=&quot;2&quot; rowspan=&quot;3&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;기구 용도&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 74.9166%; text-align: center; height: 21px;&quot; colspan=&quot;5&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;원동기 종류&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 8.35547%; text-align: center; height: 84px;&quot; rowspan=&quot;2&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;인덕션&lt;br /&gt;모터&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.58798%; text-align: center; height: 84px;&quot; rowspan=&quot;2&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;스핀들&lt;br /&gt;모터&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 57.9732%; text-align: center; height: 21px;&quot; colspan=&quot;3&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;서보 모터&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 63px;&quot;&gt;
&lt;td style=&quot;width: 16.2623%; text-align: center; height: 63px;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;최대&amp;nbsp;출력이 &lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;정격의 200% 이하&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.216%; text-align: center; height: 63px;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; 최대&amp;nbsp;출력이&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;정격의 200% 초과 300% 이하 &lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.4949%; text-align: center; height: 63px;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; 최대&amp;nbsp;출력이&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;정격의 300% 초과&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 10.7973%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;로봇&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 14.2858%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;스칼라 타입&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.35547%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.58798%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.2623%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.216%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.4949%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 10.7973%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;사출 성형기&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 14.2858%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;클램핑,&lt;br /&gt;볼나사 구동&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.35547%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.58798%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.2623%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.3&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.216%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.4949%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.5&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 10.7973%; text-align: center; height: 34px;&quot; rowspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;공작 기계&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 14.2858%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;선반, &lt;br /&gt;드릴 프레스&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.35547%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.58798%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.3&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.2623%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.2&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.216%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.3&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.4949%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 14.2858%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;연삭반, 밀링반&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.35547%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.58798%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.3&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.2623%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.2&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.216%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.3&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.4949%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25.0831%; text-align: center; height: 17px;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;컨베이어&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.35547%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.58798%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.2623%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.216%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.5&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.4949%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25.0831%; text-align: center; height: 17px;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; 의료 기계, 계측 기계 &lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.35547%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.5&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.58798%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.5&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.2623%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.1&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.216%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.1&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.4949%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.2&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 25.0831%; text-align: center; height: 21px;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;포장 기계&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.35547%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.58798%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.5&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.2623%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.1&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.216%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.1&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.4949%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.2&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 10.7973%; text-align: center; height: 42px;&quot; rowspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;교반기, &lt;br /&gt;믹서&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 14.2858%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;액체&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.35547%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.58798%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.2623%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.2&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.216%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.3&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.4949%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 14.2858%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;점성체&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.35547%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.58798%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.2623%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.3&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.216%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.4949%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.5&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 25.0831%; text-align: center; height: 21px;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;굴삭기, 조립기&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.35547%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.58798%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.2623%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.216%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.5&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.4949%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 25.0831%; text-align: center; height: 21px;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;원심분리기&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.35547%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.9&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.58798%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.9&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.2623%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.5&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.216%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.4949%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.7&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 10.7973%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;밀&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 14.2858%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;볼, 로드&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.35547%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.2&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.58798%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.2&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.2623%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.216%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.4949%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.9&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25.0831%; text-align: center; height: 17px;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;인쇄 기계, 제본 기계&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.35547%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.58798%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.2623%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.216%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.4949%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 10.7973%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;제지 기계&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 14.2858%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;캘린더, 드라이어&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.35547%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.58798%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.2623%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.216%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.4949%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25.0831%; text-align: center; height: 17px;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;섬유 기계&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.35547%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.58798%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.2623%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.216%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.4949%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 10.7973%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;와이어 관련&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 14.2858%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;신선기, 연선기&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.35547%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.1&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.58798%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.2623%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.216%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.1&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.4949%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.2&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25.0831%; text-align: center; height: 17px;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;목공 기계&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.35547%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.58798%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.2623%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.2&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.216%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.3&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.4949%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25.0831%; text-align: center; height: 17px;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;펌프&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.35547%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.58798%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.2623%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.216%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.4949%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 10.7973%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;컴프레서&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 14.2858%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;레시프로, 회전&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.35547%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.58798%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.2623%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.216%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.4949%; text-align: center; height: 17px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 10.7973%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;팬, 송풍기&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 14.2858%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;축류, 루츠&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.35547%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.58798%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.2623%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.3&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.216%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.4949%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.5&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 25.0831%; text-align: center; height: 21px;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;발전기, 여자기&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.35547%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.58798%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.2623%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.216%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.5&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.4949%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 25.0831%; text-align: center; height: 21px;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;고무 공업용 기계, 제재 기계&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.35547%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.58798%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.0&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.2623%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.6&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.216%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.4949%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.8&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 127px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style4&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;background-color: #006dd7; width: 100%; height: 21px; text-align: center;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #ffffff;&quot;&gt;&lt;b&gt;회전비 보정 계수 &lt;i&gt;Kr&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;회전비&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;계수&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1 이상 1.25 미만&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.25 이상 1.75 미만&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.1&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.75 이상 2.5 미만&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.2&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2.5 이상 3.5 미만&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.3&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;3.5 이상&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.4&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 93px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style4&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;background-color: #006dd7; width: 100%; height: 21px; text-align: center;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #ffffff;&quot;&gt;&lt;b&gt;아이들러 보정 계수 &lt;i&gt;Ki&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;유형&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;계수&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;아이들러 없음&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;내측 아이들러&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.1 &amp;times; (개수 - 1)&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;외측 아이들러&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.1 &amp;times; (개수 - 1)&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 93px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style4&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;background-color: #006dd7; width: 100%; text-align: center; height: 21px;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #ffffff;&quot;&gt;&lt;b&gt;운전 시간 보정 계수 &lt;i&gt;Kh&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;운전 시간 (시간/일)&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;계수&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;8시간 이하&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.1&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;8시간 초과 16시간 미만&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.2&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;16시간 이상&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.3&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style4&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;background-color: #006dd7; width: 100%; text-align: center;&quot; colspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #ffffff;&quot;&gt;&lt;b&gt;기동 정지 보정 계수 &lt;i&gt;Km&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;기동 정지 빈도 (회/일)&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;계수&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;10회 이하&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.1&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;10회 초과 100회 이하&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.2&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;100회 초과 500회 이사&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.3&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;500회 초과&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.4&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3.3. 타이밍벨트 톱니 간격 결정&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;앞서 선정한 타이밍벨트 규격, 설계동력, 소형풀리 회전속도를 고려하여 타이밍벨트의 톱니 간격을 결정한다. 이때 타이밍벨트 규격에 따라 제시된 간이선정표를 보고 설계동력과 소형풀리 회전속도 지점이 포함된 영역에 해당하는 모델을 선택한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3.3.1. 경부하 반송용&lt;/b&gt;&lt;/span&gt;(MXL, XL, L, H, T_)&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;3534&quot; data-origin-height=&quot;2163&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bQEFik/dJMcaaKU4iX/b9K9JdnlAR4HICHjNXW40K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bQEFik/dJMcaaKU4iX/b9K9JdnlAR4HICHjNXW40K/img.png&quot; data-alt=&quot;경부하 반송용 타이밍벨트 간이선정표&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bQEFik/dJMcaaKU4iX/b9K9JdnlAR4HICHjNXW40K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbQEFik%2FdJMcaaKU4iX%2Fb9K9JdnlAR4HICHjNXW40K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;597&quot; height=&quot;365&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;3534&quot; data-origin-height=&quot;2163&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;경부하 반송용 타이밍벨트 간이선정표&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3.3.2. 고토크 전달용&lt;/b&gt;(S_M)&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;3408&quot; data-origin-height=&quot;2163&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/GHDPN/dJMcafk9Vs5/6Jq671wHtwdmXZKYot8nw1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/GHDPN/dJMcafk9Vs5/6Jq671wHtwdmXZKYot8nw1/img.png&quot; data-alt=&quot;고토크 전달용 타이밍벨트 S_M 간이선정표&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/GHDPN/dJMcafk9Vs5/6Jq671wHtwdmXZKYot8nw1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FGHDPN%2FdJMcafk9Vs5%2F6Jq671wHtwdmXZKYot8nw1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;575&quot; height=&quot;365&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;3408&quot; data-origin-height=&quot;2163&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;고토크 전달용 타이밍벨트 S_M 간이선정표&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt; 3.3.3. 고토크 전달용&lt;/b&gt;(P_M)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;3787&quot; data-origin-height=&quot;3939&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dvAhc5/dJMcajgJ4v9/x7wLIk0LvboJzbrDgS2VP0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dvAhc5/dJMcajgJ4v9/x7wLIk0LvboJzbrDgS2VP0/img.png&quot; data-alt=&quot;고토크 전달용 타이밍벨트 P_M 간이선정표&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dvAhc5/dJMcajgJ4v9/x7wLIk0LvboJzbrDgS2VP0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdvAhc5%2FdJMcajgJ4v9%2Fx7wLIk0LvboJzbrDgS2VP0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;649&quot; height=&quot;675&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;3787&quot; data-origin-height=&quot;3939&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;고토크 전달용 타이밍벨트 P_M 간이선정표&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt; 3.3.4. 고정밀도 위치 결정용&lt;/b&gt;(2GT, 3GT)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;2332&quot; data-origin-height=&quot;2402&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/blSihE/dJMcafFsGdc/a0rgRBYEEFeowFYZhh95K0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/blSihE/dJMcafFsGdc/a0rgRBYEEFeowFYZhh95K0/img.png&quot; data-alt=&quot;고정밀도 위치 결정용 타이밍벨트 2GT, 3GT 간이선정표&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/blSihE/dJMcafFsGdc/a0rgRBYEEFeowFYZhh95K0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FblSihE%2FdJMcafFsGdc%2Fa0rgRBYEEFeowFYZhh95K0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;412&quot; height=&quot;424&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;2332&quot; data-origin-height=&quot;2402&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;고정밀도 위치 결정용 타이밍벨트 2GT, 3GT 간이선정표&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt; 3.3.5. 고정밀도 위치 결정용&lt;/b&gt;(5GT, 8YU)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;2305&quot; data-origin-height=&quot;2365&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kIPhZ/dJMcahJ4aYn/MEJSBtROREoQ5fewHYEaNK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kIPhZ/dJMcahJ4aYn/MEJSBtROREoQ5fewHYEaNK/img.png&quot; data-alt=&quot;고정밀도 위치 결정용 타이밍벨트 5GT, 8YU 간이선정표&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kIPhZ/dJMcahJ4aYn/MEJSBtROREoQ5fewHYEaNK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkIPhZ%2FdJMcahJ4aYn%2FMEJSBtROREoQ5fewHYEaNK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;414&quot; height=&quot;425&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;2305&quot; data-origin-height=&quot;2365&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;고정밀도 위치 결정용 타이밍벨트 5GT, 8YU 간이선정표&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;[함께 읽으면 좋은 페이지]&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1770049704531&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;공학설계 | 기본설계(1): 시제품 레이아웃과 공학해석&quot; data-og-description=&quot;1. 공학설계 2. 제품기획 2.1. 요구사항목록 3. 개념설계 3.1. 설계문제와 기능구조도 3.2. 동작원리와 설계대안 4. 기본설계 4.1. 시제품 레이아웃과 공학해석 ★ 4.2. 견실최적설계 4.2.1. 문제 정의 4.2.&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/392&quot; data-og-url=&quot;https://vedacube.tistory.com/392&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bEQBEs/dJMb9dHja6H/V1KgkUO0wLvkvInIzVnoB1/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/LTdAT/dJMb9lk2kAn/7nqlGhKx4pbzTjrXUuQPOk/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/bfcLR4/dJMb9lL6J44/Z9wQiEPJmUMPuYMRXQRB20/img.png?width=4342&amp;amp;height=2456&amp;amp;face=0_0_4342_2456&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/392&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/392&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bEQBEs/dJMb9dHja6H/V1KgkUO0wLvkvInIzVnoB1/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/LTdAT/dJMb9lk2kAn/7nqlGhKx4pbzTjrXUuQPOk/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/bfcLR4/dJMb9lL6J44/Z9wQiEPJmUMPuYMRXQRB20/img.png?width=4342&amp;amp;height=2456&amp;amp;face=0_0_4342_2456');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;공학설계 | 기본설계(1): 시제품 레이아웃과 공학해석&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 공학설계 2. 제품기획 2.1. 요구사항목록 3. 개념설계 3.1. 설계문제와 기능구조도 3.2. 동작원리와 설계대안 4. 기본설계 4.1. 시제품 레이아웃과 공학해석 ★ 4.2. 견실최적설계 4.2.1. 문제 정의 4.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1772794544400&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;공학설계 | 기계요소(2): 타이밍벨트 선정 방법(2) - 둘레 길이와 너비&quot; data-og-description=&quot;1. 선정 방법 앞서 타이밍벨트의 규격을 결정했다면, 해당 타이밍벨트와 맞물려 움직일 풀리의 톱니 개수와 타이밍벨트의 둘레 길이 등 구체적인 제원을 결정한다. 1.1. 풀리 톱니 개수 결정 아래&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/432&quot; data-og-url=&quot;https://vedacube.tistory.com/432&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/lrDjN/dJMb9g484RT/LmMiqdylCOyNjboiIcy8K0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/c6OmIc/dJMb9efbQPQ/FrfZLOs6RR5K4k5HTbucQk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/eh6TjH/dJMb9c9vLXe/MdPea7hmVv7AwPTI5SQdNK/img.png?width=5358&amp;amp;height=3504&amp;amp;face=0_0_5358_3504&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/432&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/432&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/lrDjN/dJMb9g484RT/LmMiqdylCOyNjboiIcy8K0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/c6OmIc/dJMb9efbQPQ/FrfZLOs6RR5K4k5HTbucQk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/eh6TjH/dJMb9c9vLXe/MdPea7hmVv7AwPTI5SQdNK/img.png?width=5358&amp;amp;height=3504&amp;amp;face=0_0_5358_3504');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;공학설계 | 기계요소(2): 타이밍벨트 선정 방법(2) - 둘레 길이와 너비&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 선정 방법 앞서 타이밍벨트의 규격을 결정했다면, 해당 타이밍벨트와 맞물려 움직일 풀리의 톱니 개수와 타이밍벨트의 둘레 길이 등 구체적인 제원을 결정한다. 1.1. 풀리 톱니 개수 결정 아래&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;참고문헌&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;- MiSUMi. (n.d.). 타이밍벨트&amp;middot;풀리 종합정보 개요. MiSUMi. &lt;a href=&quot;https://kr.misumi-ec.com/special/timing_pulley/about/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://kr.misumi-ec.com/special/timing_pulley/about/&lt;/a&gt;. 2026.01.26.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;- MiSUMi. (n.d.). 전동 타이밍 벨트의 선정 방법 1. &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;MiSUMi.&lt;/span&gt; &lt;/span&gt; &lt;a href=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0095.html?bid=bid_kr_ec_43766_192&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0095.html?bid=bid_kr_ec_43766_192&lt;/a&gt;. 2026.02.02.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;- MiSUMi. (n.d.). 전동 타이밍 벨트의 선정 방법 2.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;MiSUMi. &lt;a href=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0100.html?bid=bid_kr_ec_43766_192&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0100.html?bid=bid_kr_ec_43766_192&lt;/a&gt;. 2026.02.02.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;- MiSUMi. (n.d.). 전동 타이밍 벨트의 선정 방법 3. &lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;MiSUMi. &lt;a href=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0101.html?bid=bid_kr_ec_43766_192&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0101.html?bid=bid_kr_ec_43766_192&lt;/a&gt;. 2026.02.02.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Engineering Design</category>
      <category>공학</category>
      <category>공학설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/158</guid>
      <comments>https://vedacube.tistory.com/158#entry158comment</comments>
      <pubDate>Fri, 27 Feb 2026 18:00:00 +0900</pubDate>
    </item>
    <item>
      <title>공학설계 | 기계요소(1): 평기어 선정 방법</title>
      <link>https://vedacube.tistory.com/401</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1. 평기어&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;3469&quot; data-origin-height=&quot;1978&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dZWTOL/dJMcaiWoijZ/WF8G5CWNKC7yq7fIRzdyD1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dZWTOL/dJMcaiWoijZ/WF8G5CWNKC7yq7fIRzdyD1/img.png&quot; data-alt=&quot;평기어&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dZWTOL/dJMcaiWoijZ/WF8G5CWNKC7yq7fIRzdyD1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdZWTOL%2FdJMcaiWoijZ%2FWF8G5CWNKC7yq7fIRzdyD1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;553&quot; height=&quot;315&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;3469&quot; data-origin-height=&quot;1978&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;평기어&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;구동기가 발생시키는 동력을 전달하는 가장 기본적인 기계요소로, &lt;b&gt;두 개의 평기어가 구동기 축과 평행하게 배치된 상태에서 한 평기어를 회전시키면 톱니가 서로 맞물려 회전하여 동력을 전달&lt;/b&gt;한다. 동일한 직경과 잇수를 가진 평기어를 사용한다면 동일한 회전속력과 토크를 전달하지만, 서로 다른 직경과 잇수를 가진 평기어를 조합하면 토크를 낮추는 대신 회전속력을 높이거나, 반대로 회전속력을 낮추는 대신 토크를 높일 수 있다. 이때 상대적으로 큰 기어를 스퍼 기어(spur gear), 작은 기어를 피니언 기어(pinion gear)라고 부른다. 평기어는 아래 링크로 접속하면 본인이 필요한 제원을 고려하여 구매할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1769955685539&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;MISUMI | 미스미 종합 Web 카탈로그&quot; data-og-description=&quot;&quot; data-og-host=&quot;kr.misumi-ec.com&quot; data-og-source-url=&quot;https://kr.misumi-ec.com/vona2/mech/M1000000000/M1006000000/M1006010000/&quot; data-og-url=&quot;https://kr.misumi-ec.com/vona2/mech/M1000000000/M1006000000/M1006010000/&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://kr.misumi-ec.com/vona2/mech/M1000000000/M1006000000/M1006010000/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://kr.misumi-ec.com/vona2/mech/M1000000000/M1006000000/M1006010000/&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;MISUMI | 미스미 종합 Web 카탈로그&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;kr.misumi-ec.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2. 규격&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2.1. 기준원&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;4159&quot; data-origin-height=&quot;1954&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/DcYmX/dJMcafFpDiW/Kfb1ksWHQUn7vMpUMQHD71/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/DcYmX/dJMcafFpDiW/Kfb1ksWHQUn7vMpUMQHD71/img.png&quot; data-alt=&quot;기준원&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/DcYmX/dJMcafFpDiW/Kfb1ksWHQUn7vMpUMQHD71/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDcYmX%2FdJMcafFpDiW%2FKfb1ksWHQUn7vMpUMQHD71%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;671&quot; height=&quot;315&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;4159&quot; data-origin-height=&quot;1954&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;기준원&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;기준원은 &lt;b&gt;평기어의 원주를 따라 형성된 톱니의 기준이 되는 원&lt;/b&gt;이다. 톱니 끝단을 연결한 이끝원보다는 직경이 작고, 톱니 뿌리를 연결한 이뿌리원보다는 직경이 크다. &lt;b&gt;두 평기어가 맞물려 회전하는 경우 평기어 각각에 대해 기준원을 그리면 두 기준원이 서로 접한 상태&lt;/b&gt;를 보인다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2.2. 모듈&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&amp;nbsp; &amp;nbsp;모듈은 &lt;b&gt;평기어의 톱니 크기를 나타내는 규격&lt;/b&gt;으로,&amp;nbsp;&lt;/span&gt;기준원 직경 &lt;i&gt;d&lt;/i&gt;와 평기어의 이빨 개수 &lt;i&gt;Z&lt;/i&gt;로 나누어 아래와 같이 계산할 수 있다. 서로 다른 평기어가 맞물려 회전하기 위해서는 이빨 크기, 즉 모듈이 같아야 한다. &lt;b&gt;모듈이 다른 평기어끼리는 서로 맞물리지 않으므로 선정 시 주의&lt;/b&gt;하자. 일반적으로 부하가 높을수록 큰 모듈의 평기어를 선정한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1769404720781&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
m = \frac{d_1}{Z_1} = \frac{d_2}{Z_2}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} m = \frac{d_1}{Z_1} = \frac{d_2}{Z_2} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3. 선정 방법&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;4801&quot; data-origin-height=&quot;1390&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tLbyO/dJMcafS1bUr/W3HLiXwm9Ir5BWQcm0HMD0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tLbyO/dJMcafS1bUr/W3HLiXwm9Ir5BWQcm0HMD0/img.png&quot; data-alt=&quot;평기어 선정 방법&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tLbyO/dJMcafS1bUr/W3HLiXwm9Ir5BWQcm0HMD0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FtLbyO%2FdJMcafS1bUr%2FW3HLiXwm9Ir5BWQcm0HMD0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;777&quot; height=&quot;225&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;4801&quot; data-origin-height=&quot;1390&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;평기어 선정 방법&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;평기어 선정 시 정해진 순서와 방법이 있는 것은 아니지만 어떤 평기어를 선택할 때 어떤 요소를 고려해야하는지 순서대로 정리하였다. 기본적으로 평기어를 이용해 구현하고자 하는 회전비 혹은 토크비를 먼저 결정하고, 이를 만족할 평기어의 기준원과 모듈을 선택하는 순서로 이루어진다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3.1. 설계 조건 결정&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;평기어을 선정하기에 앞서&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;원동측으로부터 전달된 토크와 회전속도가 종동측에서 어느 정도로 구현되어야 하는지 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;다음과 같은 설계 조건을 결정한다.&lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;■&amp;nbsp; 종동측 토크&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;■&amp;nbsp; 종동측 회전속도&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3.2. 목표 회전비 결정&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;4263&quot; data-origin-height=&quot;1978&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cM53N1/dJMcacBYLhf/8sFsQ6CBtAAZkBa5Ow2xOK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cM53N1/dJMcacBYLhf/8sFsQ6CBtAAZkBa5Ow2xOK/img.png&quot; data-alt=&quot;목표 회전비 결정&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cM53N1/dJMcacBYLhf/8sFsQ6CBtAAZkBa5Ow2xOK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcM53N1%2FdJMcacBYLhf%2F8sFsQ6CBtAAZkBa5Ow2xOK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;679&quot; height=&quot;315&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;4263&quot; data-origin-height=&quot;1978&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;목표 회전비 결정&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;회전구동기로부터 발생시키고자 하는 목표 토크와 회전속도가 있다면, &lt;b&gt;평기어 한 쌍을 이용해 회전구동기의 토크를 얼마나 증폭하거나 감쇠시킬지 계산&lt;/b&gt;한다. 이를 기반으로 회전구동기에 연결된 원동 평기어와, 이에 맞물려 회전하는 종동 평기어 사이의 속도전달비, 즉 회전비를 결정한다. 이때 맞물리는 한 쌍의 평기어에서 종동 평기어의 이빨 개수가 원동 평기어보다 두 배 많다면 토크는 두 배로 증폭되고, 회전속도는 절반으로 감쇠된다. 반대로 원동 평기어보다 두 배 적다면 회전속도는 두 배 증폭되고, 토크는 절반으로 감쇠된다. &lt;b&gt;원동 평기어 대비 종동 평기어의 톱니 개수로 정의되는 회전비&lt;/b&gt;는 평기어의 톱니 개수 &lt;i&gt;Z&lt;/i&gt;, 기준원 직경 &lt;i&gt;d&lt;/i&gt;, 회전수 &lt;i&gt;n&lt;/i&gt;으로 나타내면 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1769408858961&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
i = \frac{Z_2}{Z_1} = \frac{d_2}{d_1} = \frac{n_1}{n_2}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} i = \frac{Z_2}{Z_1} = \frac{d_2}{d_1} = \frac{n_1}{n_2} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3.3. 기준원 및 모듈 임시 결정&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;앞서 결정한 회전비를 유지한 채로 &lt;b&gt;원동 기어와 종동 기어의 기준원과 모듈을 임시로 결정&lt;/b&gt;한다.&amp;nbsp;현재 설계에서 기어박스에 허용된 공간을 고려하여 스퍼 기어의 기준원 직경을 먼저 결정하고, 회전비를 고려하여 피니언 기어의 회전비를 임시로 결정한다. 기어박스에 가해질 부하를 고려하여 모듈 또한 임시로 결정한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3.4. 축간 거리 확인&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Engineering Design.png&quot; data-origin-width=&quot;4060&quot; data-origin-height=&quot;2709&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bh5IUO/dJMcac9Htm2/JzZcaibXMCKG4O0HOYI0Q1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bh5IUO/dJMcac9Htm2/JzZcaibXMCKG4O0HOYI0Q1/img.png&quot; data-alt=&quot;축간 거리 확인&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bh5IUO/dJMcac9Htm2/JzZcaibXMCKG4O0HOYI0Q1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbh5IUO%2FdJMcac9Htm2%2FJzZcaibXMCKG4O0HOYI0Q1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;653&quot; height=&quot;436&quot; data-filename=&quot;Engineering Design.png&quot; data-origin-width=&quot;4060&quot; data-origin-height=&quot;2709&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;축간 거리 확인&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;b&gt;두 평기어의 축간 거리를 확인하여 상대적 위치를 결정&lt;/b&gt;한다. 이때 축간 거리는 아래와 같이 기준원의 반지름을 더한 값에 해당한다. 축간 거리를 고려했을 때 두 평기어가 기어박스에 허용된 공간 내에 배치될 수 있을지 가늠한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1769409852038&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
a = \frac{d_1+d_2}{2} = \frac{m\left(Z_1+Z_2\right)}{2}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} a = \frac{d_1+d_2}{2} = \frac{m\left(Z_1+Z_2\right)}{2} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3.5. 기타 제원 임시 결정 및 허용 전달력 검토&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;평기어의 두께, 재질, 구멍 직경, 구동축과의 체결 방법 등의 기타 제원을 제조사 혹은 발주처의 카탈로그를 기반으로 결정하여 모델을 임시로 확정한다. 마지막으로 해당 평기어가 &lt;b&gt;현재 설계에서 파손없이 구동할 수 있을지&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;카탈로그에 제시된 허용 전달력을 기반으로 검토&lt;/b&gt;한다. &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;검증 과정에서 설계 결함을 발견했다면 기준원 임시 결정 단계로 돌아가 선정 과정을 반복한다. 임시 결정한 평기어의 제원이 공학적으로 안전하다고 판단했다면 평기어의 제원을 확정한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;[함께 읽으면 좋은 페이지]&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1769411117469&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;공학설계 | 기본설계(1): 시제품 레이아웃과 공학해석&quot; data-og-description=&quot;1. 공학설계 2. 제품기획 2.1. 요구사항목록 3. 개념설계 3.1. 설계문제와 기능구조도 3.2. 동작원리와 설계대안 4. 기본설계 4.1. 시제품 레이아웃과 공학해석 ★ 4.2. 견실최적설계 4.2.1. 문제 정의 4.2.&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/392&quot; data-og-url=&quot;https://vedacube.tistory.com/392&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/seLNy/dJMb8SXsfZN/HwSoKKjL2CWKwHpVcdTJE0/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/eFuZX/dJMb8YXFUsH/v8vLk7Ab5Cl04S28FdkOWK/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/b4eBBZ/dJMb9kTXp0N/XnT6oURMXHeM2oNhnYEFM1/img.png?width=4342&amp;amp;height=2456&amp;amp;face=0_0_4342_2456&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/392&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/392&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/seLNy/dJMb8SXsfZN/HwSoKKjL2CWKwHpVcdTJE0/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/eFuZX/dJMb8YXFUsH/v8vLk7Ab5Cl04S28FdkOWK/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/b4eBBZ/dJMb9kTXp0N/XnT6oURMXHeM2oNhnYEFM1/img.png?width=4342&amp;amp;height=2456&amp;amp;face=0_0_4342_2456');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;공학설계 | 기본설계(1): 시제품 레이아웃과 공학해석&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 공학설계 2. 제품기획 2.1. 요구사항목록 3. 개념설계 3.1. 설계문제와 기능구조도 3.2. 동작원리와 설계대안 4. 기본설계 4.1. 시제품 레이아웃과 공학해석 ★ 4.2. 견실최적설계 4.2.1. 문제 정의 4.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;- MiSUMi. (n.d.). 기어란. MiSUMi. &lt;a href=&quot;https://kr.misumi-ec.com/special/gear/about/?srsltid=AfmBOooudx1adjt6QXJkUs0XL8wv7yuJKfrgXTKxIUh2uC61ELPEB1AY&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://kr.misumi-ec.com/special/gear/about/?srsltid=AfmBOooudx1adjt6QXJkUs0XL8wv7yuJKfrgXTKxIUh2uC61ELPEB1AY&lt;/a&gt;. 2026.01.24.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-MiSUMi. (n.d.). 평기어 선정 참고 자료. MiSUMi. &lt;a href=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0082.html?srsltid=AfmBOopAt5aUsIymNI5cT1IPqKCmJ85LRHY5FPW1U1qxFZVoiCUbjXTi&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0082.html?srsltid=AfmBOopAt5aUsIymNI5cT1IPqKCmJ85LRHY5FPW1U1qxFZVoiCUbjXTi&lt;/a&gt;. 2026.01.26.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;- MiSUMi. (n.d.). 평기어 간이 선정 절차(예 3). MiSUMi. &lt;a href=&quot;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0085.html?bid=bid_kr_ec_43766_192&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://kr.misumi-ec.com/tech-info/categories/technical_data/td03/a0085.html?bid=bid_kr_ec_43766_192&lt;/a&gt;. 2026.01.26.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Engineering Design</category>
      <category>공학</category>
      <category>공학설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/401</guid>
      <comments>https://vedacube.tistory.com/401#entry401comment</comments>
      <pubDate>Fri, 20 Feb 2026 18:00:23 +0900</pubDate>
    </item>
    <item>
      <title>파이썬 | 객체 지향 프로그래밍(3): 클래스 상속</title>
      <link>https://vedacube.tistory.com/161</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/358&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 파이썬&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/347&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 기본 기능과 규칙&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 변수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.1. 기본자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/356&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1.1. 정수형, 실수형, 논리형, 문자열&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.2. 복합자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/149&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.1. 리스트, 튜플&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/355&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.2. 딕셔너리, 세트&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.3. 자료형 메소드&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/359&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 리스트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/361&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.2. 딕셔너리 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/362&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.3. 세트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/349&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.4. 객체 복사&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 조건문과 반복문&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/328&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. if-elif-else, while, for&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/234&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. range, enumerate, zip&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/165&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.3. break, continue&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 예외 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/295&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. try-except&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 사용자 정의 함수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/145&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. def-return&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/137&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 매개변수와 전달인자&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/323&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 지역변수와 전역변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 모듈, 패키지, 라이브러리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/322&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. impoart-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 파일 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/151&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 메모장 파일 쓰고 읽기&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/402&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. with-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 객체 지향 프로그래밍&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/152&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 클래스와 인스턴스&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/350&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 속성과 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/161&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 클래스 상속 ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1. 클래스 상속&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;7.png&quot; data-origin-width=&quot;3321&quot; data-origin-height=&quot;1672&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/u3kWp/dJMb99L2DKJ/xqMnU3qLG4Xx1D1CgKQf1K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/u3kWp/dJMb99L2DKJ/xqMnU3qLG4Xx1D1CgKQf1K/img.png&quot; data-alt=&quot;클래스 상속&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/u3kWp/dJMb99L2DKJ/xqMnU3qLG4Xx1D1CgKQf1K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fu3kWp%2FdJMb99L2DKJ%2FxqMnU3qLG4Xx1D1CgKQf1K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;526&quot; height=&quot;265&quot; data-filename=&quot;7.png&quot; data-origin-width=&quot;3321&quot; data-origin-height=&quot;1672&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;클래스 상속&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;새로 정의하려는 클래스가 기존에 정의했던 클래스와 유사한 속성과 메소드를 가진다면, 처음부터 새로 정의할 필요 없이 기존 클래스의 특징을 상속 받아 클래스를 정의할 수 있다. 아래 예시와 같이 &lt;b&gt;새로 정의하는 클래스 이름 뒤 괄호 안에 &lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;상위 클래스 이름을 작성하는 것으로 상위 클래스의 속성과 메소드를 동일하게 가져온다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1746538428252&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;class apprentice:			# 상위 클래스
    race = 'human'				
    rank = 1
    def __init__(self, nickname):
        self._HP, self._MP = 50, 50
        self._STR, self._DEX, self._INT, self._LUK = 5, 5, 5, 5
        self._nickname = nickname
    def nickname(self):
        print(f'nickname: {self._nickname}')

class swordsman(apprentice):		# 클래스 상속

avatar1 = swordsman('Aragon')

print(avatar1.race)
avatar1.nickname()&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1.1. 클래스 속성/메소드 추가&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;하위 클래스에 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;새로운 클래스 속성이나 메소드를 추가하는 것 또한 가능하다. 아래 예시와 같이 하위 클래스 쌍점 아래로 속성과 메소드를 정의하면 되며, 이는 오직 하위 클래스와 하위 클래스를 통해 생성된 인스턴스에만 적용된다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1770707674118&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;class apprentice:
    race = 'human'				
    rank = 1
    def __init__(self, nickname):
        self._HP, self._MP = 50, 50
        self._STR, self._DEX, self._INT, self._LUK = 5, 5, 5, 5
        self._nickname = nickname
    def nickname(self):
        print(f'nickname: {self._nickname}')
    def status(self):
        print(f'HP: {self._HP} | MP: {self._MP}')
    def stat(self):
        print(f'STR: {self._STR} | DEX: {self._DEX} | INT: {self._INT} | LUK: {self._LUK}')
    def damaged(self, damage):
        self._HP -= damage
        if self._HP &amp;lt;= 0:        
            self._HP == 0
            print(f'{self._nickname}이(가) 사망했습니다.')  
    def punch(self, avatar):
        damage = self._STR + 0.5 * self._DEX
        avatar.damaged(damage)
    def magicarrow(self, avatar):
        damage = self._INT + self._LUK
        avatar.damaged(damage)
        self._MP -= 10  

class swordsman(apprentice):
    clan = 'hyperion'			# 클래스 속성 추가
    def slash(self, avatar):		# 클래스 메소드 추가
        damage = 2 * self._STR
        avatar.damaged(damage) 

avatar1 = swordsman('Aragon')

print(avatar1.race)
print(avatar1.clan)
avatar1.nickname()&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1.2. 클래스 속성/메소드 재정의&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;하위 클래스에서 &lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;초기화 메소드를 포함하여&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt; &lt;/span&gt;&lt;b&gt;상위 클래스와 동일한 이름을 가진 속성과 메소드를 정의하면 메소드를 재정의&lt;/b&gt;(override)할 수 있다. 하위 클래스를 통해 생성된 인스턴스에서 해당 메소드를 호출하면 상위 클래스의 메소드가 아닌 해당 인스턴스가 속한 하위 클래스의 메소드가 호출된다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1748998490875&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;class apprentice:			
    race = 'human'				
    rank = 1
    def __init__(self, nickname):
        self._HP, self._MP = 50, 50
        self._STR, self._DEX, self._INT, self._LUK = 5, 5, 5, 5
        self._nickname = nickname
    def nickname(self):
        print(f'nickname: {self.__nickname}')
    def status(self):
        print(f'HP: {self._HP} | MP: {self._MP}')
    def stat(self):
        print(f'STR: {self._STR} | DEX: {self._DEX} | INT: {self._INT} | LUK: {self._LUK}')
    def damaged(self, damage):
        self._HP -= damage
        if self._HP &amp;lt;= 0:        
            self._HP == 0
            print(f'{self._nickname}이(가) 사망했습니다.')  
    def punch(self, avatar):   	 	# 상위 클래스 행동 메소드
        damage = self._STR + 0.5 * self._DEX
        avatar.damaged(damage)
    def magicarrow(self, avatar):
        damage = self._INT + self._LUK
        avatar.damaged(damage)
        self._MP -= 10  

class swordsman(apprentice):		
    clan = 'hyperion'
    rank = 2      			# 클래스 속성 재정의
    def __init__(self, nickname):	# 초기화 메소드 재정의
        self._HP, self._MP = 75, 50
        self._STR, self._DEX, self._INT, self._LUK = 7.5, 5, 5, 5
        self._nickname = nickname
    def punch(self, avatar):   	 	# 행동 메소드 재정의
        damage = 1.2 * self._STR + 0.5 * self._DEX
        avatar.damaged(damage)
    def slash(self, avatar):
        damage = 2 * self._STR
        avatar.damaged(damage)

avatar1 = swordsman('Steve')
avatar2 = swordsman('Aragon')

avatar1.punch(avatar2)
avatar2.slash(avatar1)

avatar1.status()
avatar2.status()&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1.3. super() 메소드&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;앞서 하위 클래스의 초기화 메소드를 정의할 때 상위 클래스와 동일한 인스턴스 속성을 상속하되, 하위 클래스에서 몇 가지 속성만 수정하고자 한다면 super() 메소드를 호출한다. 해당 메소드는 하위 클래스에서 상위 클래스의 메소드를 호출한다. 아래 예시와 같이 &lt;b&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;하위 클래스의 초기화 메소드에서 &lt;/span&gt;super() 메소드를 이용해 상위 클래스의 초기화 메소드를 호출하면 상위 클래스의 인스턴스 속성을 그대로 상속&lt;/b&gt; 받는다. 상속 받은 후에 몇 가지 인스턴스 속성만 재정의하는 것으로 상위 클래스를 정의할 때 작성한 명령문을 재활용할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1770708739134&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;class apprentice:			
    def __init__(self, nickname):
        self._HP, self._MP = 50, 50
        self._STR, self._DEX, self._INT, self._LUK = 5, 5, 5, 5
        self._nickname = nickname
    def status(self):
        print(f'HP: {self._HP} | MP: {self._MP}')
    def stat(self):
        print(f'STR: {self._STR} | DEX: {self._DEX} | INT: {self._INT} | LUK: {self._LUK}')

class swordsman(apprentice):		
    def __init__(self, nickname):	# 초기화 메소드 재정의
        super().__init__(nickname)
        self._HP, self._STR = 75, 7.5

avatar1 = swordsman('Aragon')

avatar1.status()
avatar1.stat()&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;2. 다중 상속&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;3228&quot; data-origin-height=&quot;3251&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bpVnec/dJMcaac8YnC/B1cbVAOQTic0IRXPKYjKg0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bpVnec/dJMcaac8YnC/B1cbVAOQTic0IRXPKYjKg0/img.png&quot; data-alt=&quot;다중 상속&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bpVnec/dJMcaac8YnC/B1cbVAOQTic0IRXPKYjKg0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbpVnec%2FdJMcaac8YnC%2FB1cbVAOQTic0IRXPKYjKg0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;541&quot; height=&quot;545&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;3228&quot; data-origin-height=&quot;3251&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;다중 상속&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;다중 상속은 &lt;b&gt;하위 클래스가 두 개 이상의 상위 클래스를 상속받는 경우&lt;/b&gt;를 말한다. 여러 상위 클래스의 속성과 메소드를 모두 상속받고자 하는 경우, 새로 정의하는 하위 클래스 이름 뒤 괄호 안에 상위 클래스의 이름들을 작성하는 것으로 정의할 수 있다. 이때 상위 클래스들이 가지고 있는 속성과 메소드의 이름이 서로 같으면 호출 과정에서 문제가 발생하므로, 파이썬은 &lt;b&gt;이름이 겹칠 경우 왼쪽 상위 클래스에 우선순위를 두고 호출하여 &lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;명칭 오류를 회피&lt;/b&gt;한다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1770713228688&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;class apprentice:			
    race = 'human'				
    rank = 1

class wildbear:
    race = 'animal'
    rank = 2

class druid(apprentice, wildbear):	# 우선순위: apprentice
    rank = 2

class werebear(wildbear, apprentice):	# 우선순위: wildbear
    rank = 3

avatar1 = druid()
avatar2 = werebear()

print(avatar1.race)
print(avatar2.race)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1770984745051&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;파이썬 | 객체 지향 프로그래밍(1): 클래스와 인스턴스&quot; data-og-description=&quot;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/152&quot; data-og-url=&quot;https://vedacube.tistory.com/152&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/comoC0/dJMb84XUVbK/EEPVKLu1oblA3RsHGn7hG1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/c3u8QF/dJMb84p4Uns/8SaKKN92QH72I0WqUsJeh0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bQgIYM/dJMb86OXZg7/tYKkRiwM2G58gLwUbCwdK0/img.png?width=3949&amp;amp;height=4047&amp;amp;face=0_0_3949_4047&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/152&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/152&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/comoC0/dJMb84XUVbK/EEPVKLu1oblA3RsHGn7hG1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/c3u8QF/dJMb84p4Uns/8SaKKN92QH72I0WqUsJeh0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bQgIYM/dJMb86OXZg7/tYKkRiwM2G58gLwUbCwdK0/img.png?width=3949&amp;amp;height=4047&amp;amp;face=0_0_3949_4047');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;파이썬 | 객체 지향 프로그래밍(1): 클래스와 인스턴스&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;- 박진수. (2019). 바로 쓰는 파이썬. 서울대학교출판문화원.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Programming/Python</category>
      <category>파이썬</category>
      <category>프로그래밍</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/161</guid>
      <comments>https://vedacube.tistory.com/161#entry161comment</comments>
      <pubDate>Fri, 13 Feb 2026 18:00:35 +0900</pubDate>
    </item>
    <item>
      <title>최적설계 | 파이썬 기반 미분 진화 알고리즘 scipy.optimize.differential_evolution</title>
      <link>https://vedacube.tistory.com/156</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;1. 최적설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/336&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 설계문제 정식화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/352&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.2. 제약조건의 정규화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/338&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2. 최적성 조건&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/339&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/340&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2. 부등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/341&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3. KKT 최적성 조건&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/346&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 대안 형식과 이계 필요조건&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/317&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3. 선형계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/348&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 심플렉스법&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/354&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1.1. 인위변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/353&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. scipy.optimize.linprog&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/320&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4. 이차계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/103&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. qpsolvers.solve_qp&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 비제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/166&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 최속강하법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/109&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 공액경사법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/122&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 구간감소법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/123&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. 설계문제의 선형화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/130&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.2. 순차 선형계획법 SLP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/80&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.3. 순차 이차계획법 SQP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/396&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.4. 부정확 이동거리 탐색법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/321&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.5. 제약최속강하법 CSD&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 자연 영감 탐색법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/397&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 유전 알고리즘 GA&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/405&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1.1. pygad.GA&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/398&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. 미분 진화 알고리즘 DE&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/156&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2.1. scipy.optimize.differential_evolution ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 다목적 최적설계 문제&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/144&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 파레토 최적점&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/431&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 가중치 합 방법&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/213&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 비지배 정렬 유전 알고리즘 NSGA-II&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/212&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3.1. pymoo.alghrithms.moo.nsga2.NSGA2&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. SciPy&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&amp;nbsp; &amp;nbsp;SciPy는 파이썬 기반의&amp;nbsp;&lt;b&gt;오픈소스 패키지&lt;/b&gt;로, 최적화를 비롯한&amp;nbsp;&lt;b&gt;과학기술 계산 문제를 다루는 알고리즘을 제공한다.&lt;/b&gt;&amp;nbsp;파이썬 기반의 연산 패키지인 NumPy와도 호환이 가능해&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #333333;&quot;&gt;복잡하게 형식을 정의할 필요가 없어 편리하게 이용할 수 있다.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #333333;&quot;&gt;해당 패키지는 아래 명렁어를 명령 프롬프트에 입력하여 설치할 수 있으며, 아래 링크로 접속하면 SciPy 패키지에 대한 설명을 확인할 수 있다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;pip install scipy&lt;/code&gt;&lt;/pre&gt;
&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;SciPy User Guide &amp;mdash; SciPy v1.17.0 Manual&quot; data-ke-align=&quot;alignCenter&quot; data-og-description=&quot;SciPy User Guide SciPy is a collection of mathematical algorithms and convenience functions built on NumPy . It adds significant power to Python by providing the user with high-level commands and classes for manipulating and visualizing data. Subpackages a&quot; data-og-host=&quot;docs.scipy.org&quot; data-og-source-url=&quot;https://docs.scipy.org/doc/scipy/tutorial/index.html#user-guide&quot; data-og-image=&quot;&quot; data-og-url=&quot;https://docs.scipy.org/doc/scipy/tutorial/index.html#user-guide&quot;&gt;&lt;a href=&quot;https://docs.scipy.org/doc/scipy/tutorial/index.html#user-guide&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://docs.scipy.org/doc/scipy/tutorial/index.html#user-guide&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('\'\'');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;SciPy User Guide &amp;mdash; SciPy v1.17.0 Manual&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;SciPy User Guide SciPy is a collection of mathematical algorithms and convenience functions built on NumPy . It adds significant power to Python by providing the user with high-level commands and classes for manipulating and visualizing data. Subpackages a&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;docs.scipy.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. scipy.optimize.differential_evolution&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;SciPy에서 지원하는 최적화 알고리즘 모듈 scipy.optimization에는 전역 최적해를 탐색하기 위한 미분 진화 알고리즘이 포함되어 있다. 해당 알고리즘에 &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;적합성 함수와 설계변수들의 상한과 하한을 &lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;함수에 전달하는 것으로 &lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&lt;b&gt;전역 최적해를 탐색&lt;/b&gt;할 수 있다. scipy.optimize.differential_evolution 함수에 할당할 속성을 나열하면 아래와 같다. &lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;이외에도 변이 전략, 최대 세대 수, 인구 수 등 알고리즘의 세부 파라미터를 사용자가 원하는대로 설정할 수 있다.&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;●&amp;nbsp; 적합성 함수 (fitness_func)&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;●&amp;nbsp; 설계변수 범위 (bounds)&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;○&amp;nbsp; 제약조건 (constraints)&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3. scipy.optimize.LinearConstraint&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;scipy.optimize가 지원하는 알고리즘에 &lt;b&gt;선형 제약조건&lt;/b&gt;을 부여하는 경우에는 scipy.optimize.LinearConstraint 함수를 이용해 별도로 지정하고 알고리즘에 할당한다. 해당 함수를 이용해 선형 제약조건을 부여할 때는 아래와 같은 형태로 다수의 선형 제약조건을 정의한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1769871942753&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathbf{lb} \leq \mathbf{A} \mathbf{x} \leq \mathbf{ub}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{lb} \leq \mathbf{A} \mathbf{x} \leq \mathbf{ub} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;만약 다음과 같은 다수의 선형 제약조건이 있다면 &lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;scipy.optimize.LinearConstraint를 이용해 아래와 같이 코드로 나타낼 수 있다. 아래 예시처럼 &lt;b&gt;부등호 제약조건이 아닌 등호 제약조건은 상한과 하한의 값을 동일하게 적용&lt;/b&gt;하여 나타낸다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1769872476660&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{subject~to}~~~~&amp;amp;x_1 + x_2 \leq 10 \\\\
&amp;amp;2x_1 - x_3 \geq 5 \\\\
&amp;amp;x_2 + x_3 = 3
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{subject~to}~~~~&amp;amp;x_1 + x_2 \leq 10 \\\\ &amp;amp;2x_1 - x_3 \geq 5 \\\\ &amp;amp;x_2 + x_3 = 3 \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1769872355332&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# 라이브러리 추가
from numpy as np
from scipy.optimize import LinearConstraint

# 선형 제약조건 정의
A = [
    [1, 1, 0], 
    [2, 0, -1], 
    [0, 1, 1]
]
lb = [-np.inf, 5, 3]
ub = [10, np.inf, 3]

# 선형 제약조건 객체 생성
linear_constraints = LinearConstraint(A, lb, ub)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;4. &lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;scipy.optimize.NonlinearConstraint&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;scipy.optimize가 지원하는 알고리즘에&lt;b&gt; 비선&lt;/b&gt;&lt;/span&gt;&lt;b&gt;형 제약조건&lt;/b&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;을 부여하는 경우에는 scipy.optimize.NonlinearConstraint 함수를 이용해 별도로 지정하고 알고리즘에 할당한다. 해당 함수를 이용해 비선형 제약조건을 부여할 때는 아래와 같은 형태로 다수의 비선형 제약조건을 정의한다.&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1769871994792&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathbf{lb} \leq \mathbf{f} \left( \mathbf{x} \right) \leq \mathbf{ub}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{lb} \leq \mathbf{f} \left( \mathbf{x} \right) \leq \mathbf{ub} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;만약 다음과 같은 다수의 비선형 제약조건이 있다면&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;scipy.optimize.NonlinearConstraint를 이용해 아래와 같이 코드로 나타낼 수 있다. 앞서 소개한 &lt;b&gt;선형 제약조건과 비선형 제약조건을 미분 진화 알고리즘에 모두 부여하고 싶다면 두 인스턴스를 튜플로 묶어 함수에 할당&lt;/b&gt;한다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1769872841450&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{subject~to}~~~~&amp;amp;x_1^2 + x_2^2 \geq 1 \\\\
&amp;amp;x_1 x_2 \geq 2
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{subject~to}~~~~&amp;amp;x_1^2 + x_2^2 \geq 1 \\\\ &amp;amp;x_1 x_2 \geq 2 \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1769872364020&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# 라이브러리 추가
from numpy as np
from scipy.optimize import NonlinearConstraint

# 비선형 제약조건 정의
def nonlinear_constraints(solution):
    x1, x2 = solution 
    cond1 = x1**2 + x2**2
    cond2 = x1 * x2
    return [cond1, cond2]
lb = [1, 2]
ub = [np.inf, np.inf]

# 비선형 제약조건 객체 생성
nonlinear_constraint = NonlinearConstraint(nonlinear_constraints, lb, ub)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;5. 파이썬 라이브러리 설치&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;SciPy 라이브러리를 원활하게 사용하기 위해서는 몇 가지 라이브러리를 추가로 설치해야 한다. 인터넷에 연결된 상태에서 명령 프롬프트에 아래 명령어들을 하나씩 입력하는 것으로 설치할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1769259709692&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;pip install numpy&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;6. 예제&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: start;&quot;&gt;&amp;nbsp; &amp;nbsp;다음과 같은 최적화 문제를 미분 진화 알고리즘을 이용해 풀이해보자.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1769259303565&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{minimize}~~~~&amp;amp;f = \left( x_1-3 \right)^2 + \left( x_2-3 \right)^2 \\\\
\mathrm{subject~to}~~~~&amp;amp;x_1 + x_2 \leq 4 \\\\
&amp;amp;x_1 - 3x_2 = 1 \\\\
&amp;amp;x_1 \geq 0,~~x_2 \geq 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{minimize}~~~~&amp;amp;f = \left( x_1-3 \right)^2 + \left( x_2-3 \right)^2 \\\\ \mathrm{subject~to}~~~~&amp;amp;x_1 + x_2 \leq 4 \\\\ &amp;amp;x_1 - 3x_2 = 1 \\\\ &amp;amp;x_1 \geq 0,~~x_2 \geq 0 \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1769259396166&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# 라이브러리 추가
import numpy as np
from scipy.optimize import differential_evolution, LinearConstraint

# 적합성 함수 정의
def fitness_func(solution):
    x1, x2 = solution
    fitness = (x1-3)**2 + (x2-3)**2
    return fitness

# 선형 제약조건 정의
A = [
    [1, 1], 
    [1, -3]
]
lb = [-np.inf, 1]
ub = [4, 1]

# 선형 제약조건 객체 생성
linear_constraints = LinearConstraint(A, lb, ub)

# 설계변수 범위 정의
bounds = [(0, 999999999), (0, 999999999)] # 무한대(np.inf) 대신 매우 큰 값 할당

# 미분 진화 알고리즘 실행
result = differential_evolution(
    fitness_func, 
    bounds=bounds,
    constraints=linear_constraints)

# 미분 진화 알고리즘 결과 출력
print(&quot;Optimal value of x:&quot;, result.x)
print(&quot;Minimum value of the function:&quot;, result.fun)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;[함께 읽으면 좋은 페이지]&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1770377253782&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;파이썬이란?&quot; data-og-description=&quot;1. 파이썬 ★ 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/358&quot; data-og-url=&quot;https://vedacube.tistory.com/358&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/caZQP1/dJMb9frAZ4X/lesQHIAQPmWd43hDENTRK0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/CKOqA/dJMb9eTLaIO/fmSLuggWJgo6P2MWq0aVy1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/wJ18o/dJMb9b3NBSW/3wNmCpzk9f3m9VsbUK8c70/img.png?width=5354&amp;amp;height=2613&amp;amp;face=0_0_5354_2613&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/358&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/358&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/caZQP1/dJMb9frAZ4X/lesQHIAQPmWd43hDENTRK0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/CKOqA/dJMb9eTLaIO/fmSLuggWJgo6P2MWq0aVy1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/wJ18o/dJMb9b3NBSW/3wNmCpzk9f3m9VsbUK8c70/img.png?width=5354&amp;amp;height=2613&amp;amp;face=0_0_5354_2613');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;파이썬이란?&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 파이썬 ★ 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1769869802398&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 자연 영감 탐색법(2): 미분 진화 알고리즘 DE&quot; data-og-description=&quot;1. 미분 진화 알고리즘 미분 진화(differential evolution, DE) 알고리즘은 유전 알고리즘처럼 교차와 변이를 거듭하며 전역 최적해를 탐색한다. 허용된 설계변수 영역 내에서 설계대안을 무작위로 생성&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/398&quot; data-og-url=&quot;https://vedacube.tistory.com/398&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/hiNXP/dJMb8Xkannc/EnSzYgAa00slCRYOk98oKk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/ccYT6E/dJMb8QL6Yh8/l0wPTuArWHBRxdSD7VShn1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/zQJnG/dJMb8Xkannd/8siGsGMRgo6ZYvWEcPkYm1/img.png?width=3796&amp;amp;height=1451&amp;amp;face=0_0_3796_1451&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/398&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/398&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/hiNXP/dJMb8Xkannc/EnSzYgAa00slCRYOk98oKk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/ccYT6E/dJMb8QL6Yh8/l0wPTuArWHBRxdSD7VShn1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/zQJnG/dJMb8Xkannd/8siGsGMRgo6ZYvWEcPkYm1/img.png?width=3796&amp;amp;height=1451&amp;amp;face=0_0_3796_1451');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 자연 영감 탐색법(2): 미분 진화 알고리즘 DE&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 미분 진화 알고리즘 미분 진화(differential evolution, DE) 알고리즘은 유전 알고리즘처럼 교차와 변이를 거듭하며 전역 최적해를 탐색한다. 허용된 설계변수 영역 내에서 설계대안을 무작위로 생성&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;참고문헌&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333; text-align: left;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: left;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #ffffff; color: #222222; text-align: left;&quot;&gt;Arora, J. S. (2016).&amp;nbsp;&lt;/span&gt;&lt;i&gt;Introduction to optimum design&lt;/i&gt;&lt;span style=&quot;background-color: #ffffff; color: #222222; text-align: left;&quot;&gt;. Elsevier.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;- SciPy. (n.d.). scipy.optimize.differential_evolution. &lt;a href=&quot;https://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.differential_evolution.html#scipy.optimize.differential_evolution&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.differential_evolution.html#scipy.optimize.differential_evolution&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333;&quot;&gt;. 2026.01.24.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: start;&quot;&gt; - SciPy. (n.d.). scipy.optimize.LinearConstraint. &lt;a href=&quot;https://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.LinearConstraint.html#scipy.optimize.LinearConstraint&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.LinearConstraint.html#scipy.optimize.LinearConstraint&lt;/a&gt;. 2026.02.01.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: start;&quot;&gt; - SciPy. (n.d.). scipy.optimize.NonlinearConstraint. &lt;a href=&quot;https://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.NonlinearConstraint.html#scipy.optimize.NonlinearConstraint&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.NonlinearConstraint.html#scipy.optimize.NonlinearConstraint&lt;/a&gt;. 2026.02.01.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Optimum Design</category>
      <category>공학</category>
      <category>최적설계</category>
      <category>파이썬</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/156</guid>
      <comments>https://vedacube.tistory.com/156#entry156comment</comments>
      <pubDate>Fri, 6 Feb 2026 18:00:46 +0900</pubDate>
    </item>
    <item>
      <title>최적설계 | 자연 영감 탐색법(2): 미분 진화 알고리즘 DE</title>
      <link>https://vedacube.tistory.com/398</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;1. 최적설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/336&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 설계문제 정식화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/352&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.2. 제약조건의 정규화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/338&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2. 최적성 조건&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/339&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/340&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2. 부등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/341&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3. KKT 최적성 조건&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/346&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 대안 형식과 이계 필요조건&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/317&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3. 선형계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/348&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 심플렉스법&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/354&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1.1. 인위변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/353&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. scipy.optimize.linprog&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/320&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4. 이차계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/103&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. qpsolvers.solve_qp&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 비제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/166&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 최속강하법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/109&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 공액경사법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/122&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 구간감소법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/123&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. 설계문제의 선형화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/130&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.2. 순차 선형계획법 SLP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/80&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.3. 순차 이차계획법 SQP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/396&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.4. 부정확 이동거리 탐색법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/321&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.5. 제약최속강하법 CSD&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 자연 영감 탐색법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/397&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 유전 알고리즘 GA&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/405&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1.1. pygad.GA&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/398&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. 미분 진화 알고리즘 DE ★&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/156&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2.1. scipy.optimize.differential_evolution&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 다목적 최적설계 문제&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/144&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 파레토 최적점&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/431&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 가중치 합 방법&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/213&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 비지배 정렬 유전 알고리즘 NSGA-II&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/212&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3.1. pymoo.alghrithms.moo.nsga2.NSGA2&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 미분 진화 알고리즘&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;3796&quot; data-origin-height=&quot;1451&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dsgE3W/dJMcabCZjhy/oWJtiKeJ5pMBzFXjYNvn2k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dsgE3W/dJMcabCZjhy/oWJtiKeJ5pMBzFXjYNvn2k/img.png&quot; data-alt=&quot;미분 진화 알고리즘&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dsgE3W/dJMcabCZjhy/oWJtiKeJ5pMBzFXjYNvn2k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdsgE3W%2FdJMcabCZjhy%2FoWJtiKeJ5pMBzFXjYNvn2k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;667&quot; height=&quot;255&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;3796&quot; data-origin-height=&quot;1451&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;미분 진화 알고리즘&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp;&amp;nbsp; 미분 진화(&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;differential evolution, DE&lt;/span&gt;) 알고리즘은 유전 알고리즘처럼 교차와 변이를 거듭하며 전역 최적해를 탐색한다. 허용된 설계변수 영역 내에서 설계대안을 무작위로 생성하고 변이와 교차를 일으킨 뒤 기존의 설계대안들과 적합도 함수값을 비교하여 더 나은 설계대안을 선별한다. 미분 진화 알고리즘 또한 미분이 불가능한 목적함수에도 적용할 수 있으며, 유전 알고리즘과는 다르게 설계대안을 이진법 문자열이 아닌 실수 벡터로 나타내기 때문에 실용적인 측면에서 선호도가 높다. 미분 진화 알고리즘은 &lt;b&gt;▲변이&lt;/b&gt;, &lt;b&gt;▲교차, &lt;b&gt;▲선택&lt;/b&gt;&amp;nbsp;&lt;/b&gt;과정을 거치며 전역 최적해를 탐색한다. 알고리즘은 세대 수가 사전에 사용자가 설정한 세대 한계나 목적함수 값에 도달하거나, 가장 좋은 목적함수 값이 여러 세대를 거쳐도 가시적으로 변하지 않으면 종료된다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2. 초기 생성&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;탐색을 시작하기에 앞서 초기 설계대안을 생성한다. 설계대안 수 &lt;i&gt;Np&lt;/i&gt;는 일반적으로 설계변수 개수 &lt;i&gt;n&lt;/i&gt;의 다섯 배 혹은 열 배 사이의 수로 다음과 같이 선택한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1769236808199&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
5n \leq N_p \leq 10n
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} 5n \leq N_p \leq 10n \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;한 세대에서 다룰 설계대안 수를 결정했다면 &lt;b&gt;허용된 설계공간 내에서 무작위 방식으로 설계대안을 생성하여 실수 벡터로 나타낸다.&lt;/b&gt; 초기 설계대안을 무작위로 생성하는 방법 중 하나는 설계변수 &lt;i&gt;x&lt;sub&gt;j&lt;/sub&gt;&lt;/i&gt;의 상한 &lt;i&gt;x&lt;sub&gt;jU&lt;/sub&gt;&lt;/i&gt;와 하한 &lt;i&gt;x&lt;sub&gt;jL&lt;/sub&gt;&lt;/i&gt; 범위에 대하여 균일 분포 무작위 수를 사용한다. 초기 세대에서 &lt;i&gt;i&lt;/i&gt;번째 설계대안은 다음과 같이 생성할 수 있다. 아래 식에서 &lt;i&gt;r&lt;sub&gt;ij&lt;/sub&gt;&lt;/i&gt;는 설계대안을 구성하는 각 변수에 적용되는 0과 1사이의 균일 분포 무작위 수이다. 각 설계변수별로 다른 균일 분포 무작위 수를 적용하여 무작위 설계대안을 생성한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1769237087005&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
x_j^{(i,0)} = x_{jL} + r_{ij} \left(x_{jU}-x_{jL}\right);~~~~j=1~~to~~n
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} x_j^{(i,0)} = x_{jL} + r_{ij} \left(x_{jU}-x_{jL}\right);~~~~j=1~~to~~n \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3. 변이&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;3297&quot; data-origin-height=&quot;615&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dtljhz/dJMcagqK3Jb/9NqGQmcTxR3UiPRY0zqZWk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dtljhz/dJMcagqK3Jb/9NqGQmcTxR3UiPRY0zqZWk/img.png&quot; data-alt=&quot;변이&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dtljhz/dJMcagqK3Jb/9NqGQmcTxR3UiPRY0zqZWk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdtljhz%2FdJMcagqK3Jb%2F9NqGQmcTxR3UiPRY0zqZWk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;564&quot; height=&quot;105&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;3297&quot; data-origin-height=&quot;615&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;변이&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;설계대안들 중에서 &lt;b&gt;무작위로 세 가지의 설계대안을 선택하고, 해당 설계대안들을 나타내는 실수 벡터들의 미분, 정확히는 실수 벡터의 차를 이용해 공여(donor) 설계대안을 생성&lt;/b&gt;한다. 변이된 설계대안을 생성하기 위해 현재 세대에서 서로 다른 세 가지의 설계대안을 무작위로 선택한다. 아래 식에서 &lt;i&gt;r&lt;sub&gt;1&lt;/sub&gt;&lt;/i&gt;, &lt;i&gt;r&lt;sub&gt;2&lt;/sub&gt;&lt;/i&gt;, &lt;i&gt;r&lt;sub&gt;3&lt;/sub&gt;&lt;/i&gt;는 서로 다른 세 가지의 설계점을 의미한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1769238814999&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathbf{x}^{(r_1,k)},~~~~\mathbf{x}^{(r_2,k)},~~~~\mathbf{x}^{(r_3,k)}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{x}^{(r_1,k)},~~~~\mathbf{x}^{(r_2,k)},~~~~\mathbf{x}^{(r_3,k)} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;이제 두 설계점 &lt;i&gt;r&lt;sub&gt;2&lt;/sub&gt;&lt;/i&gt;, &lt;i&gt;r&lt;sub&gt;3&lt;/sub&gt;&lt;/i&gt;를 사용하여 미분 벡터를 만들고, 이를 나머지 설계점 &lt;i&gt;r&lt;sub&gt;1&lt;/sub&gt;&lt;/i&gt;에 척도로 합산하여 공여 설계대안 &lt;i&gt;V&lt;sup&gt;(p,k)&lt;/sup&gt;&lt;/i&gt;를 계산한다. 아래 식에서 &lt;i&gt;p&lt;/i&gt;는 부모(parent) 설계를, &lt;i&gt;F&lt;/i&gt;는 0.4와 1 사이에서 사용자가 사전에 선택한 상수를 의미한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1769239314274&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathbf{V}^{(p,k)}=\mathbf{x}^{(r_1,k)} + F \times \left( \mathbf{x}^{(r_2,k)} - \mathbf{x}^{(r_3,k)} \right)
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{V}^{(p,k)}=\mathbf{x}^{(r_1,k)} + F \times \left( \mathbf{x}^{(r_2,k)} - \mathbf{x}^{(r_3,k)} \right) \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;4. 교차&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;2455&quot; data-origin-height=&quot;1120&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bddf6I/dJMb99ZuqKR/EFHqxEpK2YIkj2SVJ0YO4K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bddf6I/dJMb99ZuqKR/EFHqxEpK2YIkj2SVJ0YO4K/img.png&quot; data-alt=&quot;교차&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bddf6I/dJMb99ZuqKR/EFHqxEpK2YIkj2SVJ0YO4K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbddf6I%2FdJMb99ZuqKR%2FEFHqxEpK2YIkj2SVJ0YO4K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;449&quot; height=&quot;205&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;2455&quot; data-origin-height=&quot;1120&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;교차&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;앞서 생성한 &lt;b&gt;공여 설계대안과 현재 세대에서 무작위로 선택한 네 번째 설계대안을 서로 교차하여 시험 설계대안을 생성&lt;/b&gt;한다. 시험 설계대안 &lt;i&gt;U&lt;sup&gt;(p,k)&lt;/sup&gt;&lt;/i&gt;의 각 성분은 잠재 설계대안의 성분과 네 번째 설계대안 &lt;i&gt;x&lt;sup&gt;(p,k)&lt;/sup&gt;&lt;/i&gt;의 성분을 각각 교차하여 아래 식에 의해 결정된다. 아래 식에서 &lt;i&gt;r&lt;sub&gt;pj&lt;/sub&gt;&lt;/i&gt;는 시험 설계대안이 공여 설계대안으로부터 최소한 한 개의 성분을 받을 확률, 즉 0과 1 사이의 균일 분포 무작위 수이며, &lt;i&gt;Cr&lt;/i&gt;은 사용자가 사전에 설정한 교차율 상수를 의미한다. 교차 연산은 시험 설계대안의 각 성분에 대한 무작위 수가 교차율 상수보다 작으면 해당 성분을 공여 설계대안의 성분으로 두며, 그렇지 않으면 네 번째 설계대안의 성분으로 두는 것을 의미한다. 이 방식으로 공여 설계대안으로부터 이어받은 성분의 수는 이항 분포를 가지므로, 해당 연산을 이항 교차라고 부른다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1769246909074&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
U_j^{(p,k)} = \left\{\begin{matrix}
V_j^{(p,k)}, &amp;amp; \mathrm{if}~~r_{pj} \leq \textit{Cr} \\
x_j^{(p,k)}, &amp;amp; \mathrm{else} \\
\end{matrix}\right.;~~~~j=1~~to~~n
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} U_j^{(p,k)} = \left\{\begin{matrix} V_j^{(p,k)}, &amp;amp; \mathrm{if}~~r_{pj} \leq \textit{Cr} \\ x_j^{(p,k)}, &amp;amp; \mathrm{else} \\ \end{matrix}\right.;~~~~j=1~~to~~n \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;5. 선택&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;3060&quot; data-origin-height=&quot;615&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vIQ9O/dJMcahiU70A/FZWTBBkFCGVO5f0HVKpKe0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vIQ9O/dJMcahiU70A/FZWTBBkFCGVO5f0HVKpKe0/img.png&quot; data-alt=&quot;선택&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vIQ9O/dJMcahiU70A/FZWTBBkFCGVO5f0HVKpKe0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FvIQ9O%2FdJMcahiU70A%2FFZWTBBkFCGVO5f0HVKpKe0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;571&quot; height=&quot;115&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;3060&quot; data-origin-height=&quot;615&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;선택&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;마지막 단계는 앞서 생성한 &lt;b&gt;시험 설계대안이 네 번째 설계대안보다 우수한지 확인&lt;/b&gt;한다. 만약 시험 설계대안의 적합성 함수값이 최적화 관점에서 더 좋은 결과를 나타낸다면 시험 설계대안이 네 번째 설계대안을 대체하고, 그렇지 않다면 시험 설계대안을 버리고 네 번째 설계대안을 유지한다. 이를 식으로 나타내면 다음과 같다. 해당 과정을 거치는 동안에 설계대안들은 최적화 관점에서 그대로 유지되거나 이전보다 개선된다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1769247762312&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathbf{x}^{(p+1,k)} = \left\{\begin{matrix}
\mathbf{U}_j^{(p,k)}, &amp;amp; \mathrm{if}~~f\left(\mathbf{U}_j^{(p,k)}\right) \leq f\left(\mathbf{x}^{(p,k)}\right) \\
\mathbf{x}^{(p,k)}, &amp;amp; \mathrm{else} \\
\end{matrix}\right.
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{x}^{(p+1,k)} = \left\{\begin{matrix} \mathbf{U}_j^{(p,k)}, &amp;amp; \mathrm{if}~~f\left(\mathbf{U}_j^{(p,k)}\right) \leq f\left(\mathbf{x}^{(p,k)}\right) \\ \mathbf{x}^{(p,k)}, &amp;amp; \mathrm{else} \\ \end{matrix}\right. \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1770377229029&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 파이썬 기반 미분 진화 알고리즘 scipy.optimize.differential_evolution&quot; data-og-description=&quot;1. SciPy SciPy는 파이썬 기반의 오픈소스 패키지로, 최적화를 비롯한 과학기술 계산 문제를 다루는 알고리즘을 제공한다. 파이썬 기반의 연산 패키지인 NumPy와도 호환이 가능해 복잡하게 형식을 정&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/156&quot; data-og-url=&quot;https://vedacube.tistory.com/156&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/csuR4P/dJMb8YpQW99/1mpcgROarsW3D68nK7mw40/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/iTTDZ/dJMb8Weu73H/oCe1kxc14ovA3ZWM1muSQ0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/156&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/156&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/csuR4P/dJMb8YpQW99/1mpcgROarsW3D68nK7mw40/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/iTTDZ/dJMb8Weu73H/oCe1kxc14ovA3ZWM1muSQ0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 파이썬 기반 미분 진화 알고리즘 scipy.optimize.differential_evolution&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. SciPy SciPy는 파이썬 기반의 오픈소스 패키지로, 최적화를 비롯한 과학기술 계산 문제를 다루는 알고리즘을 제공한다. 파이썬 기반의 연산 패키지인 NumPy와도 호환이 가능해 복잡하게 형식을 정&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1773395200340&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 다목적 최적설계 문제(1): 파레토 최적점&quot; data-og-description=&quot;1. 최적설계 1.1. 설계문제 정식화 1.2. 제약조건의 정규화 2. 최적성 조건 2.1. 등호제약조건 문제 2.2. 부등호제약조건 문제 2.3. KKT 최적성 조건 2.3.1. 대안 형식과 이계 필요조건 3. 선형계획법 3.1. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/144&quot; data-og-url=&quot;https://vedacube.tistory.com/144&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/wNVYk/dJMb81fQ9BM/W51TnRJNAzQjhaKyNFkL00/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bDbAkc/dJMb9cBGDBK/Btke5b0Vc4gOIAbk8pwP11/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/c7CPhC/dJMb89yb6Iz/zycgHAr6cZrmnLIKjrJOTk/img.png?width=3650&amp;amp;height=1844&amp;amp;face=0_0_3650_1844&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/144&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/144&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/wNVYk/dJMb81fQ9BM/W51TnRJNAzQjhaKyNFkL00/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bDbAkc/dJMb9cBGDBK/Btke5b0Vc4gOIAbk8pwP11/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/c7CPhC/dJMb89yb6Iz/zycgHAr6cZrmnLIKjrJOTk/img.png?width=3650&amp;amp;height=1844&amp;amp;face=0_0_3650_1844');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 다목적 최적설계 문제(1): 파레토 최적점&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 최적설계 1.1. 설계문제 정식화 1.2. 제약조건의 정규화 2. 최적성 조건 2.1. 등호제약조건 문제 2.2. 부등호제약조건 문제 2.3. KKT 최적성 조건 2.3.1. 대안 형식과 이계 필요조건 3. 선형계획법 3.1.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #ffffff; color: #222222; text-align: left;&quot;&gt;Arora, J. S. (2016).&amp;nbsp;&lt;/span&gt;&lt;i&gt;Introduction to optimum design&lt;/i&gt;&lt;span style=&quot;background-color: #ffffff; color: #222222; text-align: left;&quot;&gt;. Elsevier.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Optimum Design</category>
      <category>공학</category>
      <category>최적설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/398</guid>
      <comments>https://vedacube.tistory.com/398#entry398comment</comments>
      <pubDate>Fri, 30 Jan 2026 18:00:44 +0900</pubDate>
    </item>
    <item>
      <title>아두이노 라이브러리 | 로드셀 신호 증폭 모듈 HX711</title>
      <link>https://vedacube.tistory.com/214</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;1. 스트레인 게이지&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;3029&quot; data-origin-height=&quot;2315&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cs85Y2/dJMcabCTJfW/OqdOKnOMki31Rrs5m6imW0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cs85Y2/dJMcabCTJfW/OqdOKnOMki31Rrs5m6imW0/img.png&quot; data-alt=&quot;스트레인 게이지&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cs85Y2/dJMcabCTJfW/OqdOKnOMki31Rrs5m6imW0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcs85Y2%2FdJMcabCTJfW%2FOqdOKnOMki31Rrs5m6imW0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;504&quot; height=&quot;385&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;3029&quot; data-origin-height=&quot;2315&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;스트레인 게이지&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;모든 물체는 힘을 받으면 눈에 보이지 않더라도 길이가 늘어나거나 줄어든다. 만약 힘을 받는 물체가 전류가 흐를 수 있는 금속이라면 힘에 의해 발생하는 미세한 길이 변위(strain)에 따라서 금속의 전기 저항이 변한다. 스트레인 게이지(strain gauge)는 해당 원리를 이용하여 &lt;b&gt;길이 변위를 전기적 신호로 바꿔주는 센서&lt;/b&gt;이다. 스트레인 게이지 내에서 금속에 해당하는 전극을 구불구불하게 배치하여 길이 변위에 따른 전기 저항 변화를 증폭한다. 스트레인 게이지를 단일로 사용하기보다는 &lt;b&gt;구조물에 접착제로 부착한 뒤 구조물의 길이 변위를 측정&lt;/b&gt;하는 방식으로 사용한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2. 로드셀&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;3620&quot; data-origin-height=&quot;1530&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dybVDh/dJMb99Zpzf9/RH9XEis6hlTzL9NpWVoh41/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dybVDh/dJMb99Zpzf9/RH9XEis6hlTzL9NpWVoh41/img.png&quot; data-alt=&quot;로드셀&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dybVDh/dJMb99Zpzf9/RH9XEis6hlTzL9NpWVoh41/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdybVDh%2FdJMb99Zpzf9%2FRH9XEis6hlTzL9NpWVoh41%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;557&quot; height=&quot;235&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;3620&quot; data-origin-height=&quot;1530&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;로드셀&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;구조물에 힘이 가해지면 그에 따라 변형이 발생한다. 이때 구조물에서 특정 부위의 길이 변위를 알면 이를 구조물에 가해진 힘과 일대일로 연결하여 간접적으로 힘을 추정할 수 있다. 이와 같은 방식으로&amp;nbsp;&lt;b&gt;힘을 측정하기 위해 스트레인 게이지를 부착하여 만든 구조물&lt;/b&gt;을 로드셀(load cell)이라고 부른다. 일반적으로 길이 변위와 힘의 선형성을 보장하기 위해 금속 구조물을 사용하며,&amp;nbsp;길이 변화에 따른 신호를 증폭하고 온도 변화에 따른 외란을 방지하기 위해&amp;nbsp;&lt;b&gt;네 개의 스트레인 게이지&lt;/b&gt;를 표준 위치에 부착하여 풀 브리지(full bridge) 회로를 형성한다. 구조물의 크기와 형상에 따라 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;선형성을 보장하는 최대 측정용량이 다르기 때문에 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;본인의 사용처에 맞는 용량&lt;/b&gt;을 골라야 한다. &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;해당 예제에서 다루고자 하는 로드셀은 최대 측정용량 500g으로, 아래 링크로 접속하면 구매할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1761104382567&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;로드셀 (Load Cell) 500g - 4선식 Full Bridge, 500g Al Beam Load Cell&quot; data-og-description=&quot;Full-Bridge 측정 방식 / 최대 측정범위 : 500g / 최대 허용범위 : 750g / 인가전압 : Max 8V&quot; data-og-host=&quot;www.devicemart.co.kr&quot; data-og-source-url=&quot;https://www.devicemart.co.kr/goods/view?no=1360975&quot; data-og-url=&quot;https://www.devicemart.co.kr/goods/view?no=1360975&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/l2hsS/hyZLcTPnAa/pgUK8idy84uapdqtX9Grok/img.png?width=600&amp;amp;height=600&amp;amp;face=0_0_600_600,https://scrap.kakaocdn.net/dn/bd5vyZ/hyZLYO0naB/odfjZdGwepKreFXJDpkXCK/img.png?width=600&amp;amp;height=600&amp;amp;face=0_0_600_600&quot;&gt;&lt;a href=&quot;https://www.devicemart.co.kr/goods/view?no=1360975&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://www.devicemart.co.kr/goods/view?no=1360975&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/l2hsS/hyZLcTPnAa/pgUK8idy84uapdqtX9Grok/img.png?width=600&amp;amp;height=600&amp;amp;face=0_0_600_600,https://scrap.kakaocdn.net/dn/bd5vyZ/hyZLYO0naB/odfjZdGwepKreFXJDpkXCK/img.png?width=600&amp;amp;height=600&amp;amp;face=0_0_600_600');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;로드셀 (Load Cell) 500g - 4선식 Full Bridge, 500g Al Beam Load Cell&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Full-Bridge 측정 방식 / 최대 측정범위 : 500g / 최대 허용범위 : 750g / 인가전압 : Max 8V&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;www.devicemart.co.kr&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3. 로드셀 신호 증폭 모듈 HX711&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;4145&quot; data-origin-height=&quot;1114&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/4Q9iL/dJMcai9Ppya/nwiGtPtOxK4X5R9LAlKT80/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/4Q9iL/dJMcai9Ppya/nwiGtPtOxK4X5R9LAlKT80/img.png&quot; data-alt=&quot;로드셀 신호 증폭 모듈 HX711&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/4Q9iL/dJMcai9Ppya/nwiGtPtOxK4X5R9LAlKT80/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F4Q9iL%2FdJMcai9Ppya%2FnwiGtPtOxK4X5R9LAlKT80%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;726&quot; height=&quot;195&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;4145&quot; data-origin-height=&quot;1114&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;로드셀 신호 증폭 모듈 HX711&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;스트레인 게이지에서 발생하는 길이 변화는 보통 우리 눈에 보이지 않을 만큼 미세하기 때문에, 이에 따른 신호 변화 또한 마이크로컨트롤러가 인식하기에 아주 미세하다. 따라서 미세한 신호를 마이크로컨트롤러가 인식할 수 있을 정도로 증폭하기 위한 추가 회로가 필요하다. 로드셀 신호 증폭 모듈 HX711은 &lt;b&gt;로드셀에 부착된 스트레인 게이지의 신호를 증폭하여 출력&lt;/b&gt;하는 기능을 지원한다. 또한 스트레인 게이지로부터의 아날로그 신호를 24비트 해상도의 디지털 신호로 변환하여 I2C 통신으로 출력하므로,&amp;nbsp;&lt;b&gt;마이크로컨트롤러가 지원하는 ADC보다 더 높은 해상도로 신호를 받아볼 수 있다.&lt;/b&gt; 한 모듈로 최대 두 개의 로드셀 신호를 받을 수 있으며, 아래 링크로 접속하면 해당 모듈을 구매할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1761104378378&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;HX711 로드셀 측정 24비트 AD 컨버터 모듈 [SZH-SSBH-016]&quot; data-og-description=&quot;24비트의 높은 분해능 / ADC 컨버터 내장형 HX711 칩셋 기반 / Voltage: 2.7V - 5V / Size:35mm x 22mm&quot; data-og-host=&quot;www.devicemart.co.kr&quot; data-og-source-url=&quot;https://www.devicemart.co.kr/goods/view?no=1327440&quot; data-og-url=&quot;https://www.devicemart.co.kr/goods/view?no=1327440&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/dvTdE4/hyZLZmOSOS/MaDjb62tb9re3N65X5Z6KK/img.jpg?width=600&amp;amp;height=450&amp;amp;face=0_0_600_450,https://scrap.kakaocdn.net/dn/Lzqgr/hyZLhHA5NH/fYXxu5SBBZxKTPWvVBzLnk/img.jpg?width=600&amp;amp;height=450&amp;amp;face=0_0_600_450,https://scrap.kakaocdn.net/dn/bgKwFb/hyZLozXQ3B/pIX3hIvoBmICtGvb6ENwX1/img.jpg?width=600&amp;amp;height=450&amp;amp;face=0_0_600_450&quot;&gt;&lt;a href=&quot;https://www.devicemart.co.kr/goods/view?no=1327440&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://www.devicemart.co.kr/goods/view?no=1327440&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/dvTdE4/hyZLZmOSOS/MaDjb62tb9re3N65X5Z6KK/img.jpg?width=600&amp;amp;height=450&amp;amp;face=0_0_600_450,https://scrap.kakaocdn.net/dn/Lzqgr/hyZLhHA5NH/fYXxu5SBBZxKTPWvVBzLnk/img.jpg?width=600&amp;amp;height=450&amp;amp;face=0_0_600_450,https://scrap.kakaocdn.net/dn/bgKwFb/hyZLozXQ3B/pIX3hIvoBmICtGvb6ENwX1/img.jpg?width=600&amp;amp;height=450&amp;amp;face=0_0_600_450');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;HX711 로드셀 측정 24비트 AD 컨버터 모듈 [SZH-SSBH-016]&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;24비트의 높은 분해능 / ADC 컨버터 내장형 HX711 칩셋 기반 / Voltage: 2.7V - 5V / Size:35mm x 22mm&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;www.devicemart.co.kr&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;4. 아두이노 라이브러리 추가&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;3979&quot; data-origin-height=&quot;1522&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b1zJcI/dJMcagRKUB4/WK5JeWHZrKCxXDjkUkMkcK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b1zJcI/dJMcagRKUB4/WK5JeWHZrKCxXDjkUkMkcK/img.png&quot; data-alt=&quot;아두이노 라이브러리 추가&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b1zJcI/dJMcagRKUB4/WK5JeWHZrKCxXDjkUkMkcK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb1zJcI%2FdJMcagRKUB4%2FWK5JeWHZrKCxXDjkUkMkcK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;640&quot; height=&quot;245&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;3979&quot; data-origin-height=&quot;1522&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;아두이노 라이브러리 추가&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;아두이노 플랫폼에는 HX711 모듈과 통신하기 위한 알고리즘이 라이브러리로 구현되어 있다. 그러나 기본적으로 제공되는 라이브러리는 아니기 때문에 라이브러리를 IDE에 추가하는 과정이 필요하다. 아두이노 IDE 상단 툴바에서 '툴'을 선택한 뒤 '라이브러리 관리' 항목을 선택하자. 그러면 곧이어 '라이브러리 매니저' 창이 나타나는데, 해당 창 오른쪽 상단에 라이브러리 이름을 입력하면 아두이노 플랫폼에서 지원하는 라이브러리를 검색할 수 있다. 해당 칸에 &lt;/span&gt;&lt;b&gt;'HX711_ADC'&lt;/b&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;를 입력하자. 라이브러리를 검색하면 입력한 검색어와 관련된 라이브러리 목록이 나타나는데, 이중에서 &lt;/span&gt;&lt;b&gt;'&lt;b&gt;HX711_ADC&lt;/b&gt;'&lt;/b&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt; 라이브러리 최신 버전을 선택하여 설치하도록 하자.&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;아래 링크로 접속하면 해당 라이브러리에 대한 설명과 사용방법을 확인할 수 있다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1767971154621&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;object&quot; data-og-title=&quot;GitHub - olkal/HX711_ADC: Arduino library for the HX711 24-bit ADC for weight scales&quot; data-og-description=&quot;Arduino library for the HX711 24-bit ADC for weight scales - olkal/HX711_ADC&quot; data-og-host=&quot;github.com&quot; data-og-source-url=&quot;https://github.com/olkal/HX711_ADC&quot; data-og-url=&quot;https://github.com/olkal/HX711_ADC&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/fC0cy/hyZRlibwz4/oxEVmOyx53wcdQKK0fQFo0/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600,https://scrap.kakaocdn.net/dn/HTY0Q/hyZQ1S7xwW/XAyDvNxhCvWCqmbh083WA0/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600&quot;&gt;&lt;a href=&quot;https://github.com/olkal/HX711_ADC&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://github.com/olkal/HX711_ADC&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/fC0cy/hyZRlibwz4/oxEVmOyx53wcdQKK0fQFo0/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600,https://scrap.kakaocdn.net/dn/HTY0Q/hyZQ1S7xwW/XAyDvNxhCvWCqmbh083WA0/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;GitHub - olkal/HX711_ADC: Arduino library for the HX711 24-bit ADC for weight scales&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Arduino library for the HX711 24-bit ADC for weight scales - olkal/HX711_ADC&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;github.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: justify;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;5. 로드셀 캘리브레이션&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;2973&quot; data-origin-height=&quot;1772&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/MWUKl/dJMcai9PgS7/gU71hHuAlVp8A2lOirAgW0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/MWUKl/dJMcai9PgS7/gU71hHuAlVp8A2lOirAgW0/img.png&quot; data-alt=&quot;로드셀 캘리브레이션&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/MWUKl/dJMcai9PgS7/gU71hHuAlVp8A2lOirAgW0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FMWUKl%2FdJMcai9PgS7%2FgU71hHuAlVp8A2lOirAgW0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;445&quot; height=&quot;265&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;2973&quot; data-origin-height=&quot;1772&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;로드셀 캘리브레이션&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;로드셀을 사용하기에 앞서, 로드셀에 가해진 힘과 스트레인 게이지로부터 출력되는 전압 신호의 관계를 파악하는&amp;nbsp;&lt;b&gt;캘리브레이션&lt;/b&gt;(calibration) 과정이 필요하다. 먼저 로드셀 고정 부위를 움직이지 않는 바닥에 고정하고, 로드셀 하중 부위에 구조물을 설치한다.&amp;nbsp;이때&lt;b&gt;&amp;nbsp;스트레인 게이지가 부착된 로드셀 중앙 부위가 바닥에 닿거나 다른 물체와 접촉하지 않도록&lt;/b&gt;, 위 그림처럼 고정 부위와 하중 부위에 높이 단차를 만들어야 한다.&amp;nbsp;캘리브레이션을 위해 첫 번째로, &lt;b&gt;①&lt;/b&gt; &lt;b&gt;로드셀 하중 부위에 아무런 무게를 올리지 않고 로드셀 신호값을 측정&lt;/b&gt;한다. 그 다음, &lt;b&gt;② 로드셀 하중 부위에 &lt;/b&gt;&lt;b&gt;무게를 이미 알고 있는 물체를 올려놓고 로드셀 신호값을 측정&lt;/b&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;한다. 마지막으로 &lt;/span&gt;&lt;b&gt;③ 두 신호값을 선형 보간하여 하중에 따른 신호 모델을 획득&lt;/b&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;하는 것으로 캘리브레이션을 마친다.&amp;nbsp;&lt;/span&gt;앞서 설치한 HX711_ADC 라이브러리는 캘리브레이션을 위한 알고리즘 또한 지원하고 있으므로 아래 예제를 실행하여 시리얼 모니터의 안내를 따르도록 하자.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;6. 예제&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;6.1. 회로 구성&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;6.png&quot; data-origin-width=&quot;4907&quot; data-origin-height=&quot;2884&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/czmxWK/dJMb99LRf8q/lv45zoteXT2bhrwCJEuSdk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/czmxWK/dJMb99LRf8q/lv45zoteXT2bhrwCJEuSdk/img.png&quot; data-alt=&quot;회로 구성&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/czmxWK/dJMb99LRf8q/lv45zoteXT2bhrwCJEuSdk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FczmxWK%2FdJMb99LRf8q%2Flv45zoteXT2bhrwCJEuSdk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;724&quot; height=&quot;426&quot; data-filename=&quot;6.png&quot; data-origin-width=&quot;4907&quot; data-origin-height=&quot;2884&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;회로 구성&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;6.2. 프로그램 작성 - 로드셀 캘리브레이션&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1767970878632&quot; class=&quot;cpp&quot; data-ke-language=&quot;cpp&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;#include &amp;lt;HX711_ADC.h&amp;gt; // HX711 라이브러리 추가

// LoadCell이라는 이름의 HX711 객체 생성
HX711_ADC LoadCell(4, 5); // DT, SCK

unsigned long t = 0;

void setup() {
  Serial.begin(57600); // 시리얼 통신 시작 (통신 속도: 57600 bps)
  delay(10); // 10 ms 대기
  Serial.println();
  Serial.println(&quot;Starting...&quot;);

  LoadCell.begin(); // HX711 모듈과 통신 시작
  
  // 출력값이 음수라면 아래 명령문 주석처리를 지우세요
  //LoadCell.setReverseOutput();
  
  unsigned long stabilizingtime = 2000; // 전원 인가 후 안정화 시간 설정
  boolean _tare = true; // 초기 센서값을 0으로 설정
  
  // 로드셀 초기화
  LoadCell.start(stabilizingtime, _tare);
  if (LoadCell.getTareTimeoutFlag() || LoadCell.getSignalTimeoutFlag()) {
    Serial.println(&quot;Timeout, check MCU&amp;gt;HX711 wiring and pin designations&quot;);
    while (1);
  }
  else {
    LoadCell.setCalFactor(1.0);
    Serial.println(&quot;Startup is complete&quot;);
  }
  while (!LoadCell.update());
  calibrate(); // 캘리브레이션 함수 실행
}

void loop() {
  static boolean newDataReady = 0;
  const int serialPrintInterval = 0; // 시리얼 모니터 출력 지연 시간 설정

  // 로드셀 상태 변화 여부 확인
  if (LoadCell.update()) newDataReady = true;

  // 로드셀 센서값 출력
  if (newDataReady) {
    if (millis() &amp;gt; t + serialPrintInterval) {
      float i = LoadCell.getData();
      Serial.print(&quot;Load_cell output val: &quot;);
      Serial.println(i);
      newDataReady = 0;
      t = millis();
    }
  }

  // 시리얼 모니터로부터 명령어 송신
  if (Serial.available() &amp;gt; 0) {
    char inByte = Serial.read();
    if (inByte == 't') LoadCell.tareNoDelay(); // 't' 입력 시 센서값을 0으로 설정
    else if (inByte == 'r') calibrate(); // 'r' 입력 시 캘리브레이션 시작
    else if (inByte == 'c') changeSavedCalFactor(); // 'c' 입력 시 캘리브레이션 결과값 수동으로 수정
  }

  // 센서값이 0으로 설정되었는지 확인
  if (LoadCell.getTareStatus() == true) {
    Serial.println(&quot;Tare complete&quot;);
  }

}

// 캘리브레이션 함수
void calibrate() {
  Serial.println(&quot;***&quot;);
  Serial.println(&quot;Start calibration:&quot;);
  Serial.println(&quot;Place the load cell an a level stable surface.&quot;);
  Serial.println(&quot;Remove any load applied to the load cell.&quot;);
  Serial.println(&quot;Send 't' from serial monitor to set the tare offset.&quot;);

  boolean _resume = false;
  while (_resume == false) {
    LoadCell.update();
    if (Serial.available() &amp;gt; 0) {
      if (Serial.available() &amp;gt; 0) {
        char inByte = Serial.read();
        if (inByte == 't') LoadCell.tareNoDelay();
      }
    }
    if (LoadCell.getTareStatus() == true) {
      Serial.println(&quot;Tare complete&quot;);
      _resume = true;
    }
  }

  Serial.println(&quot;Now, place your known mass on the loadcell.&quot;);
  Serial.println(&quot;Then send the weight of this mass (i.e. 100.0) from serial monitor.&quot;);

  float known_mass = 0;
  _resume = false;
  while (_resume == false) {
    LoadCell.update();
    if (Serial.available() &amp;gt; 0) {
      known_mass = Serial.parseFloat();
      if (known_mass != 0) {
        Serial.print(&quot;Known mass is: &quot;);
        Serial.println(known_mass);
        _resume = true;
      }
    }
  }

  LoadCell.refreshDataSet();
  float newCalibrationValue = LoadCell.getNewCalibration(known_mass);

  Serial.print(&quot;New calibration value has been set to: &quot;);
  Serial.print(newCalibrationValue);
  Serial.println(&quot;, use this as calibration value (calFactor) in your project sketch.&quot;);
  Serial.println(&quot;End calibration&quot;);
  Serial.println(&quot;***&quot;);
  Serial.println(&quot;To re-calibrate, send 'r' from serial monitor.&quot;);
  Serial.println(&quot;For manual edit of the calibration value, send 'c' from serial monitor.&quot;);
  Serial.println(&quot;***&quot;);
}

void changeSavedCalFactor() {
  float oldCalibrationValue = LoadCell.getCalFactor();
  boolean _resume = false;
  Serial.println(&quot;***&quot;);
  Serial.print(&quot;Current value is: &quot;);
  Serial.println(oldCalibrationValue);
  Serial.println(&quot;Now, send the new value from serial monitor, i.e. 696.0&quot;);
  float newCalibrationValue;
  while (_resume == false) {
    if (Serial.available() &amp;gt; 0) {
      newCalibrationValue = Serial.parseFloat();
      if (newCalibrationValue != 0) {
        Serial.print(&quot;New calibration value is: &quot;);
        Serial.println(newCalibrationValue);
        LoadCell.setCalFactor(newCalibrationValue);
        _resume = true;
      }
    }
  }
  Serial.println(&quot;End change calibration value&quot;);
  Serial.println(&quot;***&quot;);
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;6.3. 프로그램 작성 - 로드셀 신호 증폭 모듈 HX711&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1767970828577&quot; class=&quot;cpp&quot; data-ke-language=&quot;cpp&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;#include &amp;lt;HX711_ADC.h&amp;gt; // HX711 라이브러리 추가

// LoadCell이라는 이름의 HX711 객체 생성
HX711_ADC LoadCell(4, 5); // DT, SCK

void setup() {
  Serial.begin(115200); // 시리얼 통신 시작 (통신 속도: 115200 bps)
  delay(10); // 10 ms 대기

  LoadCell.begin(); // HX711 모듈과 통신 시작
  
  // 출력값이 음수라면 아래 명령문 주석처리를 지우세요
  //LoadCell.setReverseOutput();
  
  // ★★★ 캘리브레이션 결과값을 아래 변수에 저장하세요. 아래 값은 예시입니다.
  float calibrationValue = -144.28;
  
  unsigned long stabilizingtime = 2000; // 전원 인가 후 안정화 시간 설정
  boolean _tare = true; // 초기 센서값을 0으로 설정
  
  // 로드셀 초기화
  LoadCell.start(stabilizingtime, _tare);  
  if (LoadCell.getTareTimeoutFlag()) {
    Serial.println(&quot;Timeout, check MCU&amp;gt;HX711 wiring and pin designations&quot;);
    while (1);
  }
  else {
    LoadCell.setCalFactor(calibrationValue);
  }
}

void loop() {
  static boolean newDataReady = 0;
  // 로드셀 상태 변화 여부 확인
  if (LoadCell.update()) newDataReady = true;
    
  if (newDataReady) {
    float force_g = LoadCell.getData(); // 로드셀 센서값 송신 (단위: g) 
    Serial.print(force_g, 4); // 시리얼 모니터에 출력
    Serial.println('g');
    newDataReady = 0;
  }
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;[함께 읽으면 좋은 페이지]&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1768180378319&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;아두이노 I2C 통신 | LCD I2C 모듈 LiquidCrystal_I2C.h&quot; data-og-description=&quot;1. 아두이노 1.1. 하드웨어 종류 1.2. 소프트웨어 사용 방법 1.3. 회로 기초 지식 2. 아두이노 시리얼 통신(1): UART 2.1. 출력 2.2. 입력 3. 디지털 신호 I/O 3.1. 디지털 출력 3.2. 디지털 입력 4. 아날로그 신&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/256&quot; data-og-url=&quot;https://vedacube.tistory.com/256&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cDvY8z/hyZRrXEYXz/5QCNNJi3MiXGavCPULKYLK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bnSlAl/hyZQRV0DOP/sSpkkcKKrWtZ4Cf5RPFb81/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bphoQu/hyZRqqVsb8/cbkKblC5m4L5dp7XyX0Ytk/img.png?width=4563&amp;amp;height=1853&amp;amp;face=0_0_4563_1853&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/256&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/256&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cDvY8z/hyZRrXEYXz/5QCNNJi3MiXGavCPULKYLK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bnSlAl/hyZQRV0DOP/sSpkkcKKrWtZ4Cf5RPFb81/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bphoQu/hyZRqqVsb8/cbkKblC5m4L5dp7XyX0Ytk/img.png?width=4563&amp;amp;height=1853&amp;amp;face=0_0_4563_1853');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;아두이노 I2C 통신 | LCD I2C 모듈 LiquidCrystal_I2C.h&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 아두이노 1.1. 하드웨어 종류 1.2. 소프트웨어 사용 방법 1.3. 회로 기초 지식 2. 아두이노 시리얼 통신(1): UART 2.1. 출력 2.2. 입력 3. 디지털 신호 I/O 3.1. 디지털 출력 3.2. 디지털 입력 4. 아날로그 신&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&amp;nbsp;Indrek.&amp;nbsp;(2020).&amp;nbsp;HX711&amp;nbsp;with&amp;nbsp;a&amp;nbsp;Four&amp;nbsp;Wire&amp;nbsp;Load&amp;nbsp;Cell&amp;nbsp;and&amp;nbsp;Arduino&amp;nbsp;|&amp;nbsp;Step&amp;nbsp;by&amp;nbsp;Step&amp;nbsp;Guide.&amp;nbsp;YouTube.&amp;nbsp;&lt;a href=&quot;https://www.youtube.com/watch?v=sxzoAGf1kOo.&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.youtube.com/watch?v=sxzoAGf1kOo&lt;/a&gt;. 2026.01.12. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;- LAUMAS Innovation in Weighing. (2023). 1. 로드셀 설치, 용량, 지지판, 장착 표면, 싱글포인트 로드셀. YouTube. &lt;a href=&quot;https://www.youtube.com/watch?v=Qkd-dgOkoZA.&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.youtube.com/watch?v=Qkd-dgOkoZA&lt;/a&gt;. 2026.01.12. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;- Liz Clark. (2024). Adafruit HX711 24-bit ADC. Adafruit. &lt;a href=&quot;https://learn.adafruit.com/adafruit-hx711-24-bit-adc/overview&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://learn.adafruit.com/adafruit-hx711-24-bit-adc/overview&lt;/a&gt;. 2026.01.12.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Technology/Arduino</category>
      <category>로드셀</category>
      <category>아두이노</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/214</guid>
      <comments>https://vedacube.tistory.com/214#entry214comment</comments>
      <pubDate>Fri, 9 Jan 2026 18:00:24 +0900</pubDate>
    </item>
    <item>
      <title>최적설계 | 파이썬 기반 유전 알고리즘 pygad.GA</title>
      <link>https://vedacube.tistory.com/405</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;1. 최적설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/336&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 설계문제 정식화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/352&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.2. 제약조건의 정규화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/338&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2. 최적성 조건&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/339&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/340&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2. 부등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/341&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3. KKT 최적성 조건&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/346&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 대안 형식과 이계 필요조건&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/317&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3. 선형계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/348&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 심플렉스법&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/354&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1.1. 인위변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/353&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. scipy.optimize.linprog&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/320&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4. 이차계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/103&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. qpsolvers.solve_qp&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 비제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/166&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 최속강하법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/109&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 공액경사법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/122&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 구간감소법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/123&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. 설계문제의 선형화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/130&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.2. 순차 선형계획법 SLP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/80&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.3. 순차 이차계획법 SQP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/396&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.4. 부정확 이동거리 탐색법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/321&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.5. 제약최속강하법 CSD&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 자연 영감 탐색법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/397&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 유전 알고리즘 GA&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/405&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1.1. pygad.GA ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/398&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. 미분 진화 알고리즘 DE&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/156&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2.1. scipy.optimize.differential_evolution&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 다목적 최적설계 문제&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/144&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 파레토 최적점&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/431&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 가중치 합 방법&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/213&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 비지배 정렬 유전 알고리즘 NSGA-II&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/212&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3.1. pymoo.alghrithms.moo.nsga2.NSGA2&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1. PyGAD&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;PyGAD는 &lt;b&gt;유전 알고리즘&lt;/b&gt;을 기반으로 다양한 최적화 기능을 제공하는 파이썬 &lt;b&gt;오픈소스 패키지&lt;/b&gt;이다. 다양한 &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;재생&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;&amp;middot;&lt;/span&gt;교차&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;&amp;middot;&lt;/span&gt;변이 프로토콜을 제공하며,&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;머신러닝&amp;middot;딥러닝 라이브러리인 Keras나 PyTorch와도 연동하여 사용할 수 있다. 해당 패키지는 아래 명령어를 명령 프롬프트에 입력하여 설치할 수 있으며, 아래 링크로 접속하면 PyGAD 패키지에 대한 자세한 설명을 확인할 수 있다.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1750897468520&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;pip install pygad&lt;/code&gt;&lt;/pre&gt;
&lt;figure id=&quot;og_1750897405464&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;object&quot; data-og-title=&quot;GitHub - ahmedfgad/GeneticAlgorithmPython: Source code of PyGAD, a Python 3 library for building the genetic algorithm and train&quot; data-og-description=&quot;Source code of PyGAD, a Python 3 library for building the genetic algorithm and training machine learning algorithms (Keras &amp;amp; PyTorch). - ahmedfgad/GeneticAlgorithmPython&quot; data-og-host=&quot;github.com&quot; data-og-source-url=&quot;https://github.com/ahmedfgad/GeneticAlgorithmPython&quot; data-og-url=&quot;https://github.com/ahmedfgad/GeneticAlgorithmPython&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/fNs0i/hyZbDxYVqS/Myw4hk1myLp4M05V9YnsS1/img.png?width=1200&amp;amp;height=1200&amp;amp;face=0_0_1200_1200,https://scrap.kakaocdn.net/dn/hKWHJ/hyZcqSKFEB/snWl8hWdkeIbhzNcNPIRSk/img.png?width=1200&amp;amp;height=1200&amp;amp;face=0_0_1200_1200&quot;&gt;&lt;a href=&quot;https://github.com/ahmedfgad/GeneticAlgorithmPython&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://github.com/ahmedfgad/GeneticAlgorithmPython&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/fNs0i/hyZbDxYVqS/Myw4hk1myLp4M05V9YnsS1/img.png?width=1200&amp;amp;height=1200&amp;amp;face=0_0_1200_1200,https://scrap.kakaocdn.net/dn/hKWHJ/hyZcqSKFEB/snWl8hWdkeIbhzNcNPIRSk/img.png?width=1200&amp;amp;height=1200&amp;amp;face=0_0_1200_1200');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;GitHub - ahmedfgad/GeneticAlgorithmPython: Source code of PyGAD, a Python 3 library for building the genetic algorithm and train&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Source code of PyGAD, a Python 3 library for building the genetic algorithm and training machine learning algorithms (Keras &amp;amp; PyTorch). - ahmedfgad/GeneticAlgorithmPython&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;github.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2. pygad.GA&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;PyGAD는 유전 알고리즘 인스턴스를 생성하면서 &lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;재생&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&amp;middot;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;교차&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&amp;middot;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;변이에 대한 속성을 설정하는 것으로 시작한다. 대부분의 속성은 기본값이 이미 할당되어 있으나, &lt;b&gt;인스턴스 생성을 위해 반드시 정의해야 하는 속성&lt;/b&gt;만을 정리하면 아래와 같다. 해당 변수들에 어떤 값을 할당하느냐에 따라 유전 알고리즘의 성능과 결과가 달라지므로 경험을 기반으로 적절하게 조정하는 것이 중요하다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;●&amp;nbsp; 반복 수행의 수 (num_generations)&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;span style=&quot;font-family: 'Noto Sans Light'; background-color: #fcfcfc; color: #666666; text-align: left;&quot;&gt;●&lt;/span&gt;&amp;nbsp; 다음 단계로 복사할 설계대안의 수 (num_parents_mating)&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;span style=&quot;font-family: 'Noto Sans Light'; background-color: #fcfcfc; color: #666666; text-align: left;&quot;&gt;●&lt;/span&gt;&amp;nbsp; 적합성 함수 (fitness_func)&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;span style=&quot;font-family: 'Noto Sans Light'; background-color: #fcfcfc; color: #666666; text-align: left;&quot;&gt;●&lt;/span&gt;&amp;nbsp; 한 단계에서 생성할 설계대안의 수 (sol_per_pop)&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;span style=&quot;font-family: 'Noto Sans Light'; background-color: #fcfcfc; color: #666666; text-align: left;&quot;&gt;●&lt;/span&gt;&amp;nbsp; 설계변수의 수 (num_genes) &lt;/span&gt;&lt;/b&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;위 필수 속성 외에 사용자 편의에 맞게 할당하면 편리한 속성들을 나열하면 아래와 같다. 해당 속성들은 이미 기본값이 할당되어 있기 때문에 새로운 값을 할당할 필요는 없지만, 유전 알고리즘을 이용하여 다양한 최적화 문제를 풀이하고자 한다면 알아두도록 하자.&lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;○&amp;nbsp; 첫 단계에서 생성할 설계변수의 하한값 (init_range_low = -4)&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;○&amp;nbsp; 첫 단계에서 생성할 설계변수의 상한값 (init_range_high = 4)&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;○&amp;nbsp; 다음 단계로 복사할 설계대안 선택 방법 (parent_selection_type = &quot;sss&quot;)&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;○&amp;nbsp; 설계대안 교차 방법 (crossover_type = &quot;single_point&quot;)&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;○&amp;nbsp; 설계대안 변이 방법 (mutation_type = &quot;random&quot;)&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;○&amp;nbsp; 설계대안 변이 확률 (mutation_percent_genes = &quot;default&quot;)&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;○&amp;nbsp; 각 설계변수 값의 범위 (gene_space = None)&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3. 적합성 함수 정의&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;유전 알고리즘 인스턴스의 적합성 함수 속성에는 &lt;b&gt;적합성 함수에 대한 정보를 담은 사용자 정의 함수를 할당&lt;/b&gt;한다. 이때 &lt;b&gt;해당 함수에는 세 개의 위치 매개변수를 할당&lt;/b&gt;해야 하는데, 첫 번째 매개변수는 유전 알고리즘 인스턴스(ga_instance)를, 두 번째 매개변수는 설계변수 리스트(solution)를, 마지막 매개변수는 반복 수행 단계에서 선택할 설계대안 인덱스(solution_idx)를 전달인자로 할당받도록 정의해야 한다. 또한 &lt;b&gt;함수를 종료할 때는 적합성 함수의 값을 반환&lt;/b&gt;해야 한다. 해당 함수 내부에서는 설계변수에 따라 적합성 함수의 값을 계산하도록&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;프로그램을 &lt;/span&gt;&lt;span&gt;작성한다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1770635822206&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# 적합성 함수 정의
def fitness_func(ga_instance, solution, solution_idx):
    x1, x2 = solution
    obj_value = -((x1-3)**2 + (x2-3)**2)
    fitness = obj_value
    return fitness

# 적합성 함수 할당
fitness_function = fitness_func&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: left;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;span&gt;4. 벌칙 함수 정의&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;유전 알고리즘은 다른 최적화 알고리즘과는 다르게 제약조건을 고려하지 않는다. 따라서 만약 제약조건이 있는 최적화 문제를 유전 알고리즘으로 풀고자 한다면, &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;적합성 함수를 목적 함수와 제약조건을 중첩한 &lt;b&gt;벌칙 함수&lt;/b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;(penalty function) 형태로 나타낸다. 다음과 같은 최적화문제를 고려해보자.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1757334180553&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{minimize}~~~~&amp;amp;f \left( \mathbf{x} \right) \\\\
\mathrm{subject~to}~~~~
&amp;amp;\mathbf{g}\left( \mathbf{x} \right) \leq 0 \\\\
&amp;amp;\mathbf{h}\left( \mathbf{x} \right) = 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{minimize}~~~~&amp;amp;f \left( \mathbf{x} \right) \\\\ \mathrm{subject~to}~~~~ &amp;amp;\mathbf{g}\left( \mathbf{x} \right) \leq 0 \\\\ &amp;amp;\mathbf{h}\left( \mathbf{x} \right) = 0 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;위와 같이 등호제약조건과 부등호제약조건을 가진 최소화 문제에 대하여 벌칙 함수를 정의하면 아래와 같다. 각 제약조건 앞에 있는 가중치 계수를 조정하여&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;제약조건을 만족해야 하는 엄밀한 정도를 조정할 수 있으며, 승수를 1이 아닌 2 이상으로 설정할 경우 목적 함수에 &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;더 강한 제약을 부과할 수 있다. 너무 강한 제약을 부과할 경우 유전 알고리즘이 전역적 해에 도달하지 못하고 종료될 수 있으니 주의하자.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1757329922614&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\overline{f}\left( \mathbf{x} \right) = f\left( \mathbf{x} \right) + \sum_{i=1}^{m}u_i\cdot\mathrm{max}\left(0,g_i\left( \mathbf{x} \right)\right)^k + \sum_{j=1}^{n}v_j\left | h_j\left( \mathbf{x} \right)\right |^k
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \overline{f}\left( \mathbf{x} \right) = f\left( \mathbf{x} \right) + \sum_{i=1}^{m}u_i\cdot\mathrm{max}\left(0,g_i\left( \mathbf{x} \right)\right)^k + \sum_{j=1}^{n}v_j\left | h_j\left( \mathbf{x} \right)\right |^k \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;유전 알고리즘은 적합성 함수를 최대화하는 방향으로 동작하므로, 위와 같은 벌칙 함수를 적합성 함수로 이용하고자 한다면 다음과 같이 적합성 함수를 정의해야 한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1757335075766&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
F\left( \mathbf{x} \right) = -\overline{f}\left( \mathbf{x} \right)
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} F\left( \mathbf{x} \right) = -\overline{f}\left( \mathbf{x} \right) \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1770635845101&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# 적합성 함수 정의
def fitness_func(ga_instance, solution, solution_idx):
    x1, x2 = solution
    obj_value = -((x1-3)**2 + (x2-3)**2)
    # 벌칙 함수 정의
    penalty_coef = 1000
    penalty1 = max(0, x1+x2-4)**2
    penalty2 = abs(x1-3*x2-1)**2
    penalty = penalty_coef * (penalty1 + penalty2)
    fitness = obj_value - penalty
    return fitness

# 적합성 함수 할당
fitness_function = fitness_func&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;5. 예제&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;다음과 같은 최적화 문제를 유전 알고리즘을 이용해 풀이해보자.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1757335192486&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{minimize}~~~~&amp;amp;f = \left( x_1-3 \right)^2 + \left( x_2-3 \right)^2 \\\\
\mathrm{subject~to}~~~~&amp;amp;x_1 + x_2 \leq 4 \\\\
&amp;amp;x_1 - 3x_2 = 1 \\\\
&amp;amp;x_1 \geq 0,~~x_2 \geq 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{minimize}~~~~&amp;amp;f = \left( x_1-3 \right)^2 + \left( x_2-3 \right)^2 \\\\ \mathrm{subject~to}~~~~&amp;amp;x_1 + x_2 \leq 4 \\\\ &amp;amp;x_1 - 3x_2 = 1 \\\\ &amp;amp;x_1 \geq 0,~~x_2 \geq 0 \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1756305819650&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# 라이브러리 추가
import pygad

# 단계 종료마다 실행할 함수 정의
def on_gen_callback(ga_instance):
    print(f'Generation : {ga_instance.generations_completed}')

# 적합성 함수 정의
def fitness_func(ga_instance, solution, solution_idx):
    x1, x2 = solution
    obj_value = -((x1-3)**2 + (x2-3)**2)
    penalty_coef = 1000
    penalty1 = max(0, x1+x2-4)**2
    penalty2 = abs(x1-3*x2-1)**2
    penalty = penalty_coef * (penalty1 + penalty2)
    fitness = obj_value - penalty
    return fitness

# 적합성 함수 할당
fitness_function = fitness_func

# 설계변수 범위 정의
gene_space = [{'low': 0, 'high': 10},
              {'low': 0, 'high': 10}]

# 유전자 알고리즘 인스턴스 생성
ga_instance = pygad.GA(num_generations=1000,
                       num_parents_mating=125,
                       fitness_func=fitness_function,
                       sol_per_pop=500,
                       num_genes=len(gene_space),
                       gene_space=gene_space,
                       on_generation=on_gen_callback
                       )

# 유전자 알고리즘 실행
ga_instance.run()

# 유전자 알고리즘 결과 출력
solution, solution_fitness, solution_idx = ga_instance.best_solution()
print(f&quot;Parameters of the best solution : {solution}&quot;)
print(f&quot;Fitness value of the best solution = {solution_fitness}&quot;)
print(f&quot;Optimized value of the best solution = {(solution[0]-3)**2 + (solution[1]-3)**2}&quot;)
print(f&quot;Index of the best solution : {solution_idx}&quot;)
if ga_instance.best_solution_generation != -1:
    print(f&quot;Best fitness value reached after {ga_instance.best_solution_generation} generations.&quot;)

# 유전자 알고리즘 실행 결과 저장
filename = 'genetic'
ga_instance.save(filename=filename)

# 유전자 알고리즘 결과 불러오기
loaded_ga_instance = pygad.load(filename=filename)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1770606081882&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 자연 영감 탐색법(1): 유전 알고리즘 GA&quot; data-og-description=&quot;1. 자연 영감 탐색법 자연 영감 탐색법은 임의의 초기 설계점을 시작으로 확률적으로 최적점으로 접근하는 방법이다. 지금까지 다룬 방법론과는 다르게 국소 최소점이 아닌 전역 최소점으로 수&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/397&quot; data-og-url=&quot;https://vedacube.tistory.com/397&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bLOqkL/dJMb88F0CrV/DgP9SY1A4Y2NS0cHjJNAy1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/c19ay8/dJMb83koFxq/IYDhsJD6WAMXrodKUK4Mm1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/rEdKa/dJMb9aKAPAb/0nf5CKt9tOoyoZ9MdyLOY0/img.png?width=3358&amp;amp;height=1731&amp;amp;face=0_0_3358_1731&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/397&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/397&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bLOqkL/dJMb88F0CrV/DgP9SY1A4Y2NS0cHjJNAy1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/c19ay8/dJMb83koFxq/IYDhsJD6WAMXrodKUK4Mm1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/rEdKa/dJMb9aKAPAb/0nf5CKt9tOoyoZ9MdyLOY0/img.png?width=3358&amp;amp;height=1731&amp;amp;face=0_0_3358_1731');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 자연 영감 탐색법(1): 유전 알고리즘 GA&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 자연 영감 탐색법 자연 영감 탐색법은 임의의 초기 설계점을 시작으로 확률적으로 최적점으로 접근하는 방법이다. 지금까지 다룬 방법론과는 다르게 국소 최소점이 아닌 전역 최소점으로 수&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1750897628508&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;파이썬이란?&quot; data-og-description=&quot;1. 프로그래밍 언어 컴퓨터가 작업을 수행하기 위해서는 논리적인 순서에 맞게 명령문이 나열된 작업지시서를 사람으로부터 전달 받아야 한다. 하지만 컴퓨터는 0과 1로 구성된 기계어(machine lang&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/358&quot; data-og-url=&quot;https://vedacube.tistory.com/358&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/i8nbC/hyZcmpf0k0/7MlGwpgRC4PwZMlDKAdtD0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/ysZme/hyZchuJcob/pWUJP8BhgxHicBU1RkOh0K/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/b174uC/hyZbo8B7b0/WCikL5FJ5QcPSYRc9YfFt0/img.png?width=5354&amp;amp;height=2613&amp;amp;face=0_0_5354_2613&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/358&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/358&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/i8nbC/hyZcmpf0k0/7MlGwpgRC4PwZMlDKAdtD0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/ysZme/hyZchuJcob/pWUJP8BhgxHicBU1RkOh0K/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/b174uC/hyZbo8B7b0/WCikL5FJ5QcPSYRc9YfFt0/img.png?width=5354&amp;amp;height=2613&amp;amp;face=0_0_5354_2613');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;파이썬이란?&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 프로그래밍 언어 컴퓨터가 작업을 수행하기 위해서는 논리적인 순서에 맞게 명령문이 나열된 작업지시서를 사람으로부터 전달 받아야 한다. 하지만 컴퓨터는 0과 1로 구성된 기계어(machine lang&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;b&gt;참고문헌&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333; text-align: left;&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: left;&quot;&gt;-&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; background-color: #ffffff; color: #222222; text-align: left;&quot;&gt;Arora, J. S. (2016).&amp;nbsp;&lt;/span&gt;&lt;i&gt;Introduction to optimum design&lt;/i&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; background-color: #ffffff; color: #222222; text-align: left;&quot;&gt;. Elsevier.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333; text-align: left;&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;- PyGAD - Python Genetic Algorithm!. (n.d.). &lt;a href=&quot;https://pygad.readthedocs.io/en/latest/&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://pygad.readthedocs.io/en/latest/&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;. 2025.06.26. &lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Optimum Design</category>
      <category>공학</category>
      <category>최적설계</category>
      <category>파이썬</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/405</guid>
      <comments>https://vedacube.tistory.com/405#entry405comment</comments>
      <pubDate>Fri, 2 Jan 2026 18:00:17 +0900</pubDate>
    </item>
    <item>
      <title>최적설계 | 자연 영감 탐색법(1): 유전 알고리즘 GA</title>
      <link>https://vedacube.tistory.com/397</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;1. 최적설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/336&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 설계문제 정식화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/352&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.2. 제약조건의 정규화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/338&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2. 최적성 조건&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/339&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/340&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2. 부등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/341&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3. KKT 최적성 조건&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/346&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 대안 형식과 이계 필요조건&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/317&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3. 선형계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/348&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 심플렉스법&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/354&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1.1. 인위변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/353&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. scipy.optimize.linprog&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/320&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4. 이차계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/103&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. qpsolvers.solve_qp&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 비제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/166&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 최속강하법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/109&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 공액경사법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/122&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 구간감소법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/123&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. 설계문제의 선형화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/130&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.2. 순차 선형계획법 SLP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/80&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.3. 순차 이차계획법 SQP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/396&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.4. 부정확 이동거리 탐색법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/321&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.5. 제약최속강하법 CSD&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 자연 영감 탐색법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/397&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 유전 알고리즘 GA ★&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/405&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1.1. pygad.GA&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/398&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. 미분 진화 알고리즘 DE&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/156&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2.1. scipy.optimize.differential_evolution&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 다목적 최적설계 문제&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/144&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 파레토 최적점&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/431&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 가중치 합 방법&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/213&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 비지배 정렬 유전 알고리즘 NSGA-II&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/212&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3.1. pymoo.alghrithms.moo.nsga2.NSGA2&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 자연 영감 탐색법&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;자연 영감 탐색법은 임의의 초기 설계점을 시작으로 확률적으로 최적점으로 접근하는 방법이다. 지금까지 다룬 방법론과는 다르게 국소 최소점이 아닌 &lt;b&gt;전역 최소점으로 수렴하는 경향&lt;/b&gt;을 보이며, 탐색 과정에서 경사도를 필요로 하지 않기 때문에 연속변수, 이산변수, 미분 불가능 함수 등 &lt;b&gt;모든 종류의 최적 문제에 적용&lt;/b&gt;할 수 있다. 하지만 수학적인 엄밀함 없이 확률적으로 탐색하기 때문에 동일한 조건에서 탐색을 시작하더라도 항상 동일한 결과를 도출하지 않으며, 도출된 결과가 전역적으로 최적해라는 보장은 없다. 물론 이러한 단점은 탐색을 여러 번 수행하는 것으로 보완할 수 있다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 유전 알고리즘&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Optimum Design.png&quot; data-origin-width=&quot;2453&quot; data-origin-height=&quot;1896&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dGTesO/btsORWOk1Wl/kkJjxKhnWztAZiCBytjPXK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dGTesO/btsORWOk1Wl/kkJjxKhnWztAZiCBytjPXK/img.png&quot; data-alt=&quot;유전 알고리즘&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dGTesO/btsORWOk1Wl/kkJjxKhnWztAZiCBytjPXK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdGTesO%2FbtsORWOk1Wl%2FkkJjxKhnWztAZiCBytjPXK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;433&quot; height=&quot;335&quot; data-filename=&quot;Optimum Design.png&quot; data-origin-width=&quot;2453&quot; data-origin-height=&quot;1896&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;유전 알고리즘&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;유전 알고리즘(genetic algorithm, GA)은 각 설계변수에 허용된 값들을 무작위로 선택하여 여러 개의 설계대안을 생성하는 것으로 시작한다. 이때 설계변수의 값을 &lt;b&gt;유전자&lt;/b&gt;(gene), 유전자의 집합인 설계대안을 &lt;b&gt;염색체&lt;/b&gt;(chromosome), 염색체의 집합인 여러 개의 설계대안을 &lt;b&gt;인구&lt;/b&gt;(population)&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;, 알고리즘의 반복 단계를 &lt;b&gt;세대&lt;/b&gt;(generation)로 &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;정의하여 취급한다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;2.1. 설계 표시&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;5528&quot; data-origin-height=&quot;1016&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cRGgxk/btsOO9GsA03/GV9BTVXmJHDs8cDcGGFpPK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cRGgxk/btsOO9GsA03/GV9BTVXmJHDs8cDcGGFpPK/img.png&quot; data-alt=&quot;설계 표시&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cRGgxk/btsOO9GsA03/GV9BTVXmJHDs8cDcGGFpPK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcRGgxk%2FbtsOO9GsA03%2FGV9BTVXmJHDs8cDcGGFpPK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;844&quot; height=&quot;155&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;5528&quot; data-origin-height=&quot;1016&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;설계 표시&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;유전 알고리즘을 적용하기에 앞서 &lt;b&gt;무작위로 생성된 설계대안을 이진법 문자열로 부호화&lt;/b&gt;한다. 이때 이진법 문자열은 각 설계변수에 허용하는 값의 개수보다 큰 값을 기준으로 나타낸다. 예를 들어, 한 설계변수가 10개의 값을 허용한다면 해당 설계변수를 부호화하기 위해 16가지 표현을 나타낼 수 있는 네 자리의 이진법 문자열을 사용한다. 이처럼 &lt;i&gt;m&lt;/i&gt;자리의 이진법 문자열은 2&lt;i&gt;&lt;sup&gt;m&lt;/sup&gt;&lt;/i&gt;가지의 이산값을 부호화하여 표시하는 데 적용할 수 있으며, 설계변수에 허용하는 값의 개수가 &lt;i&gt;N&lt;sub&gt;c&lt;/sub&gt;&lt;/i&gt;라면 2&lt;i&gt;&lt;sup&gt;m&lt;/sup&gt;&lt;/i&gt;&amp;nbsp;&amp;gt; &lt;i&gt;N&lt;sub&gt;c&lt;/sub&gt;&lt;/i&gt;여야 한다. &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;i&gt;j&lt;/i&gt;번째가 &lt;i&gt;N&lt;sub&gt;c&lt;/sub&gt;&lt;/i&gt;보다 크다면 아래 식을 이용하여 &lt;i&gt;j&lt;/i&gt; &amp;le; &lt;i&gt;N&lt;sub&gt;c&lt;/sub&gt;&lt;/i&gt;가 되도록 조정한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1750727138279&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
j = INT\left(\frac{N_c}{2^m-N_c}\right)\left(j-N_c\right)
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} j = INT\left(\frac{N_c}{2^m-N_c}\right)\left(j-N_c\right) \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;2.2. 적합성 함수&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;적합성 함수(fitness function)은 &lt;b&gt;해당 설계대안이 최적점으로 얼마나 적합한지 정의&lt;/b&gt;한다. 비제약조건 문제에서는 목적함수를, 제약조건 문제에서는 벌칙함수를 사용하여 정의하며, 설계대안을 적합성 함수에 대입하였을 때 높은 적합성 값이 나올수록 더 좋은 설계를 의미한다. 적합성 함수는 여러 가지 다양한 방식으로 정의될 수 있는데, 목적함수 혹은 벌칙함수를 이용하여 정의하면 아래와 같다. &lt;i&gt;f&lt;sub&gt;i&lt;/sub&gt;&lt;/i&gt;는 &lt;i&gt;i&lt;/i&gt;번째 설계대안에 대한 목적함수 또는 벌칙함수 값이고, &lt;i&gt;f&lt;sub&gt;max&lt;/sub&gt;&lt;/i&gt;는 현재까지 기록된 가장 큰 목적함수 또는 벌칙함수 값이다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1750743572065&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
F_i = \left(1+2\times10^{-7}\right)f_{max} - f_i
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} F_i = \left(1+2\times10^{-7}\right)f_{max} - f_i \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;무작위로 생성되어 이진법 문자열로 표시된 초기 세대를 시작으로, 적합성 함수를 통해 각 설계대안을 검토하고 적합도가 높은 대안들을 지정한다. 선택한 대안들을 대상으로 &lt;b&gt;▲재생&lt;/b&gt;, &lt;b&gt;▲교차&lt;/b&gt;, &lt;b&gt;▲변이&lt;/b&gt; 과정을 거쳐 이전 세대보다 더 적합한 성향을 가진 새로운 세대를 생성한다. &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;해당 과정은 종료 기준이 만족되거나 사전에 명시한 반복 횟수를 초과하면 종료된다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: justify;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3. 재생&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;3358&quot; data-origin-height=&quot;1731&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/LHrj7/btsOQlAitzl/tJK5nXwUQCRNiiIcMoEUN0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/LHrj7/btsOQlAitzl/tJK5nXwUQCRNiiIcMoEUN0/img.png&quot; data-alt=&quot;재생&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/LHrj7/btsOQlAitzl/tJK5nXwUQCRNiiIcMoEUN0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FLHrj7%2FbtsOQlAitzl%2FtJK5nXwUQCRNiiIcMoEUN0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;573&quot; height=&quot;295&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;3358&quot; data-origin-height=&quot;1731&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;재생&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;재생(reproduction)은 현재 인구에서 설계대안을 선택하여 다음 세대로 복사하는 과정이다. 해당 과정에서 설계대안은 확률적으로 선택되며, 그 확률 &lt;i&gt;P&lt;sub&gt;i&lt;/sub&gt;&lt;/i&gt;는 적합성 함수의 값 &lt;i&gt;F&lt;sub&gt;i&lt;/sub&gt;&lt;/i&gt;를 기반으로 아래와 같이 결정된다. 아래 식에서 &lt;i&gt;N&lt;sub&gt;p&lt;/sub&gt;&lt;/i&gt;는 인구의 크기를 의미하며, 높은 적합성을 갖는 개체들이 다음 세대로 복사될 가능성이 더 크다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1750746407707&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
P_i = \frac{F_i}{\sum_{j=1}^{N_p}F_j}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} P_i = \frac{F_i}{\sum_{j=1}^{N_p}F_j} \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: justify;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;4. 교차&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;3287&quot; data-origin-height=&quot;1723&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bjYcxV/btsORBXEZe9/hnVbkc6ErCzhBZWN5teSkK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bjYcxV/btsORBXEZe9/hnVbkc6ErCzhBZWN5teSkK/img.png&quot; data-alt=&quot;교차&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bjYcxV/btsORBXEZe9/hnVbkc6ErCzhBZWN5teSkK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbjYcxV%2FbtsORBXEZe9%2FhnVbkc6ErCzhBZWN5teSkK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;563&quot; height=&quot;295&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;3287&quot; data-origin-height=&quot;1723&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;교차&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;교차(crossover)는 &lt;b&gt;재생 과정을 통해 선별된 설계대안을 대상으로 서로의 특성을 교환하기 위해 무작위로 혼합하는 과정&lt;/b&gt;이다.&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; 해당 과정을 수행하기 위한 보편적인 방법으로 일절단점과 이절단점이 있다. 일절단점은 무작위로 선택된 두 설계대안을 대상으로 분리할 위치를 무작위로 선정한 뒤 자르고 교환하여 새로운 설계대안을 구성한다. 이절단점은 분리할 위치 두 지점을 무작위로 선정하여 자르고 교환한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: justify;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;5. 변이&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;3287&quot; data-origin-height=&quot;1230&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/3yCIC/btsORbyDMeO/yijE60Yis8bgTUTH4pNOv1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/3yCIC/btsORbyDMeO/yijE60Yis8bgTUTH4pNOv1/img.png&quot; data-alt=&quot;변이&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/3yCIC/btsORbyDMeO/yijE60Yis8bgTUTH4pNOv1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F3yCIC%2FbtsORbyDMeO%2FyijE60Yis8bgTUTH4pNOv1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;574&quot; height=&quot;215&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;3287&quot; data-origin-height=&quot;1230&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;변이&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;변이(mutation)는 &lt;b&gt;교차 과정을 마친 인구에서 소수의 설계대안을 무작위로 선택한 뒤, 설계대안을 표현한 이진법 문자열에서 무작위 위치에 있는 숫자를 반대로 바꾸는 과정&lt;/b&gt;이다. 이는 재생과 교차 과정을 거치면서 가치있는 설계대안이 너무 일찍 사라지는 경우를 방지하기 위한 안전 장치이다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;[함께 읽으면 좋은 페이지]&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1767346345005&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 파이썬 기반 유전 알고리즘 pygad.GA&quot; data-og-description=&quot;1. PyGAD PyGAD는 유전 알고리즘을 기반으로 다양한 최적화 기능을 제공하는 파이썬 오픈소스 패키지이다. 다양한 재생&amp;middot;교차&amp;middot;변이 프로토콜을 제공하며, 머신러닝&amp;middot;딥러닝 라이브러리인 Keras나 PyTo&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/405&quot; data-og-url=&quot;https://vedacube.tistory.com/405&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/jWjnk/hyZQUYSdfj/jeM5LnnqRkZrbUWMpbraxk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bO6ILo/hyZQYHjdPL/MCMjk5uHU57Z9vSaNBgQ40/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/405&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/405&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/jWjnk/hyZQUYSdfj/jeM5LnnqRkZrbUWMpbraxk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bO6ILo/hyZQYHjdPL/MCMjk5uHU57Z9vSaNBgQ40/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 파이썬 기반 유전 알고리즘 pygad.GA&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. PyGAD PyGAD는 유전 알고리즘을 기반으로 다양한 최적화 기능을 제공하는 파이썬 오픈소스 패키지이다. 다양한 재생&amp;middot;교차&amp;middot;변이 프로토콜을 제공하며, 머신러닝&amp;middot;딥러닝 라이브러리인 Keras나 PyTo&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1769869826966&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 자연 영감 탐색법(2): 미분 진화 알고리즘 DE&quot; data-og-description=&quot;1. 미분 진화 알고리즘 미분 진화(differential evolution, DE) 알고리즘은 유전 알고리즘처럼 교차와 변이를 거듭하며 전역 최적해를 탐색한다. 허용된 설계변수 영역 내에서 설계대안을 무작위로 생성&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/398&quot; data-og-url=&quot;https://vedacube.tistory.com/398&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/hiNXP/dJMb8Xkannc/EnSzYgAa00slCRYOk98oKk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/ccYT6E/dJMb8QL6Yh8/l0wPTuArWHBRxdSD7VShn1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/zQJnG/dJMb8Xkannd/8siGsGMRgo6ZYvWEcPkYm1/img.png?width=3796&amp;amp;height=1451&amp;amp;face=0_0_3796_1451&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/398&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/398&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/hiNXP/dJMb8Xkannc/EnSzYgAa00slCRYOk98oKk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/ccYT6E/dJMb8QL6Yh8/l0wPTuArWHBRxdSD7VShn1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/zQJnG/dJMb8Xkannd/8siGsGMRgo6ZYvWEcPkYm1/img.png?width=3796&amp;amp;height=1451&amp;amp;face=0_0_3796_1451');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 자연 영감 탐색법(2): 미분 진화 알고리즘 DE&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 미분 진화 알고리즘 미분 진화(differential evolution, DE) 알고리즘은 유전 알고리즘처럼 교차와 변이를 거듭하며 전역 최적해를 탐색한다. 허용된 설계변수 영역 내에서 설계대안을 무작위로 생성&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #ffffff; color: #222222; text-align: left;&quot;&gt;Arora, J. S. (2016).&amp;nbsp;&lt;/span&gt;&lt;i&gt;Introduction to optimum design&lt;/i&gt;&lt;span style=&quot;background-color: #ffffff; color: #222222; text-align: left;&quot;&gt;. Elsevier.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Optimum Design</category>
      <category>공학</category>
      <category>최적설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/397</guid>
      <comments>https://vedacube.tistory.com/397#entry397comment</comments>
      <pubDate>Fri, 26 Dec 2025 18:00:47 +0900</pubDate>
    </item>
    <item>
      <title>퀀트 프로젝트 | 파이썬 기반 네이버페이 증권 주가 크롤링</title>
      <link>https://vedacube.tistory.com/235</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 네이버페이 증권 주가 크롤링&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;3528&quot; data-origin-height=&quot;1329&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/37OFa/btsQfaX6j9Z/YY1jmc0X8gfjpPH3Ek4fL1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/37OFa/btsQfaX6j9Z/YY1jmc0X8gfjpPH3Ek4fL1/img.png&quot; data-alt=&quot;네이버페이 증권 주가 크롤링&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/37OFa/btsQfaX6j9Z/YY1jmc0X8gfjpPH3Ek4fL1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F37OFa%2FbtsQfaX6j9Z%2FYY1jmc0X8gfjpPH3Ek4fL1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;597&quot; height=&quot;225&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;3528&quot; data-origin-height=&quot;1329&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;네이버페이 증권 주가 크롤링&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;가치 지표와 추세 지표를 직접 계산하려면 해당 종목의 주가 정보가 필요하다. 이때 네이버페이 증권에서 제공하는 정보를 활용하면 임의의 종목에 대해서 특정 기간의 시가와 종가를 편리하게 수집할 수 있다. 네이버페이 증권은 투자 종목별로 다양한 정보를 제공하는데, 아래에 제시된 주소를 규칙에 맞게 수정하여 접속하면 특정 종목의 주가 정보를 확인할 수 있다. &lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;아래 주소&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;를 복사하고 접속하면 2024년 2월 26일(startTime=20240226)부터 2025년 2월 26일(end&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;Time=20250226&lt;/span&gt;)까지 삼성전자(symbol=005930)의 일별(timeframe=day) 주가를 확인할 수 있다.&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;이번 프로젝트에서는 &lt;b&gt;앞서 만들었던 종목코드 파일을 불러온 뒤&lt;/b&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;네이버페이 증권에서 제공하는 종목별 주가 정보를&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;크롤링하는 기능을 파이썬 코드로 구현해보자.&lt;/span&gt;&lt;/b&gt; &lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;https://api.finance.naver.com/siseJson.naver?symbol=005930&amp;amp;requestType=1&amp;amp;startTime=20240226&amp;amp;endTime=20250226&amp;amp;timeframe=day&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2. 파이썬 라이브러리 설치&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: left;&quot;&gt;&amp;nbsp; &amp;nbsp;파이썬으로 웹사이트 정보를 크롤링하고 해석하기 위해서는 몇 가지 라이브러리를 추가로 설치해야 한다. 인터넷에 연결된 상태에서 명령 프롬프트에 아래 명령어를 입력하는 것으로 설치할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1768550235508&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;pip install requests numpy pandas html5lib&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3. 프로젝트&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3.1. 코스피 코스닥 종목코드 목록 생성&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1770880194216&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;퀀트 프로젝트 | 파이썬으로 코스피 코스닥 종목코드 불러오기 FinanceDataReader&quot; data-og-description=&quot;1. 코스피 코스닥 종목코드 불러오기 지금까지 퀀트 전략을 공부했다면 이제 전략을 직접 구현해보자. 전략을 구현하기에 앞서 투자하고자 하는 주식 시장의 모든 상장 종목과 종목코드를 알아&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/299&quot; data-og-url=&quot;https://vedacube.tistory.com/299&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/tskhN/dJMb9c9tXI1/Bh69LuFamKPGBSEuovy941/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/ddLZyp/dJMb9frBv33/UbabHLvrnaHqIrmJNHxcW0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/vICd7/dJMb9lk3dva/z6j4U9XLzHFwsB3a3c5e0k/img.png?width=3468&amp;amp;height=1571&amp;amp;face=0_0_3468_1571&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/299&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/299&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/tskhN/dJMb9c9tXI1/Bh69LuFamKPGBSEuovy941/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/ddLZyp/dJMb9frBv33/UbabHLvrnaHqIrmJNHxcW0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/vICd7/dJMb9lk3dva/z6j4U9XLzHFwsB3a3c5e0k/img.png?width=3468&amp;amp;height=1571&amp;amp;face=0_0_3468_1571');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;퀀트 프로젝트 | 파이썬으로 코스피 코스닥 종목코드 불러오기 FinanceDataReader&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 코스피 코스닥 종목코드 불러오기 지금까지 퀀트 전략을 공부했다면 이제 전략을 직접 구현해보자. 전략을 구현하기에 앞서 투자하고자 하는 주식 시장의 모든 상장 종목과 종목코드를 알아&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3.2. 주가 크롤링&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;# 라이브러리 추가
import requests
import pandas as pd
import numpy as np
import time

# 종가 크롤링 함수
def extract_price(firm_code, timeframe, startTime, endTime):
    url = 'https://api.finance.naver.com/siseJson.naver?symbol='+firm_code+'&amp;amp;requestType=1&amp;amp;startTime='+startTime+'&amp;amp;endTime='+endTime+'&amp;amp;timeframe='+timeframe
    price_data = requests.get(url)
    price_data = price_data.text[61:len(price_data.text)+1]
    price_data = price_data.split('],\n\t\t\n[')
    date_list = []
    price_list = []
    for data in price_data:
        data = data.split(', ')
        date_list.append(data[0].replace('&quot;',''))
        price_list.append(data[4])
    table = pd.DataFrame({'A'+firm_code:price_list}, index=date_list)
    return table.transpose()

# 주가 크롤링 기간 설정
startTime = '20240226'
endTime = '20250226'

# 저장된 종목코드 불러오기
code_data = pd.read_excel('01_KRX_stock_list.xlsx')
code_data = code_data['Code'].tolist()

# 종목코드별 종가 크롤링
print('Starting...')
for idx, firm_code in enumerate(code_data):
    print(idx + 1, '/', len(code_data))
    try:
        try:
            table = extract_price(firm_code[1:], 'day', startTime, endTime)
        except requests.exceptions.Timeout:
            time.sleep(60)
            table = extract_price(firm_code[1:], 'day', startTime, endTime)
        except:
            continue
        if idx == 0:
            price_table = table
        else:
            price_table = pd.concat([price_table, table])
    except ValueError:
        continue
    except KeyError:
        continue

# 주가 정보 저장
price_table.to_excel('07_priceTable.xlsx')
print('Completed!')&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/dcJUTo/dJMcaiPyEO4/cDhC7j79S2F1Kc18CU90Lk/07_priceTable.xlsx?attach=1&amp;amp;knm=tfile.xlsx&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;07_priceTable.xlsx&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;2.89MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;[함께 읽으면 좋은 페이지]&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1770880212066&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;퀀트 프로젝트 | 파이썬으로 모멘텀 투자 전략 구현하기&quot; data-og-description=&quot;1. 모멘텀 투자 전략 가치 지표나 수익성 지표를 활용하여 저평가된 우량 기업을 선별하더라도, 주식시장에 참여하고 있는 사람들의 기대와 심리에 의해 예측과 달리 주가가 하락하거나 폭발적&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/412&quot; data-og-url=&quot;https://vedacube.tistory.com/412&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cWL9dc/dJMb8SpDZhS/4a04GS67z19NabgYxk6K4K/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/vOP1V/dJMb9frBv3f/f0CUE2zOIzbI1awJijNh21/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/jA4yR/dJMb8RjXYtN/9fCT6zhvIbg4O6MGLoEuJk/img.png?width=2829&amp;amp;height=1876&amp;amp;face=0_0_2829_1876&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/412&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/412&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cWL9dc/dJMb8SpDZhS/4a04GS67z19NabgYxk6K4K/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/vOP1V/dJMb9frBv3f/f0CUE2zOIzbI1awJijNh21/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/jA4yR/dJMb8RjXYtN/9fCT6zhvIbg4O6MGLoEuJk/img.png?width=2829&amp;amp;height=1876&amp;amp;face=0_0_2829_1876');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;퀀트 프로젝트 | 파이썬으로 모멘텀 투자 전략 구현하기&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 모멘텀 투자 전략 가치 지표나 수익성 지표를 활용하여 저평가된 우량 기업을 선별하더라도, 주식시장에 참여하고 있는 사람들의 기대와 심리에 의해 예측과 달리 주가가 하락하거나 폭발적&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1751179616946&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;파이썬이란?&quot; data-og-description=&quot;1. 프로그래밍 언어 컴퓨터가 작업을 수행하기 위해서는 논리적인 순서에 맞게 명령문이 나열된 작업지시서를 사람으로부터 전달 받아야 한다. 하지만 컴퓨터는 0과 1로 구성된 기계어(machine lang&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/358&quot; data-og-url=&quot;https://vedacube.tistory.com/358&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bijLvE/hyZf6FAOyn/VUFPqvDcbcyV0Q0CdUDZek/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/Ek4hr/hyZfpkVjs1/jkbyL7lgwxV7TGKuMU7WEk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cwoRbr/hyZfW32J0U/LRaL0ZAPzIwSKag3CpKDhK/img.png?width=5354&amp;amp;height=2613&amp;amp;face=0_0_5354_2613&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/358&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/358&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bijLvE/hyZf6FAOyn/VUFPqvDcbcyV0Q0CdUDZek/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/Ek4hr/hyZfpkVjs1/jkbyL7lgwxV7TGKuMU7WEk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cwoRbr/hyZfW32J0U/LRaL0ZAPzIwSKag3CpKDhK/img.png?width=5354&amp;amp;height=2613&amp;amp;face=0_0_5354_2613');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;파이썬이란?&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 프로그래밍 언어 컴퓨터가 작업을 수행하기 위해서는 논리적인 순서에 맞게 명령문이 나열된 작업지시서를 사람으로부터 전달 받아야 한다. 하지만 컴퓨터는 0과 1로 구성된 기계어(machine lang&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌 &lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;-&amp;nbsp;GIL's&amp;nbsp;LAB.&amp;nbsp;(2022).&amp;nbsp;손에&amp;nbsp;잡히는&amp;nbsp;퀀트&amp;nbsp;투자&amp;nbsp;with&amp;nbsp;파이썬.&amp;nbsp;위키북스.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Capital/Quant</category>
      <category>재테크</category>
      <category>퀀트</category>
      <category>파이썬</category>
      <category>프로젝트</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/235</guid>
      <comments>https://vedacube.tistory.com/235#entry235comment</comments>
      <pubDate>Fri, 19 Dec 2025 18:00:40 +0900</pubDate>
    </item>
    <item>
      <title>공학설계 | 상세설계: 제작도면과 자재소요서</title>
      <link>https://vedacube.tistory.com/393</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/386&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 공학설계&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 제품기획&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/390&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 요구사항목록&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 개념설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/391&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 설계문제와 기능구조도&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/325&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. 동작원리와 설계대안&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 기본설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/392&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. 시제품 레이아웃과 공학해석&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/404&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2. 견실최적설계&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/409&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.1. 문제 정의&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/410&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.2. 제1차 실험 설계 및 수행&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/411&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.3. 민감도 분석&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 상세설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/393&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 제작도면과 자재소요서 ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 상세설계&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1940&quot; data-origin-height=&quot;1478&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/NFNRD/btsO2HQT7X9/dnsrJjKehtIWdMJxhPK8H1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/NFNRD/btsO2HQT7X9/dnsrJjKehtIWdMJxhPK8H1/img.png&quot; data-alt=&quot;상세설계&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/NFNRD/btsO2HQT7X9/dnsrJjKehtIWdMJxhPK8H1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FNFNRD%2FbtsO2HQT7X9%2FdnsrJjKehtIWdMJxhPK8H1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;321&quot; height=&quot;245&quot; data-origin-width=&quot;1940&quot; data-origin-height=&quot;1478&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;상세설계&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;상세설계 단계에서는 시스템의 레이아웃을 확정하고 &lt;b&gt;제작도면과 자재소요서를 작성&lt;/b&gt;한다. 기본설계 단계에서 시제품을 제작하면서 제작도면의 초안이 어느 정도 작성된 상태이므로, 견실최적설계를 통해 확정된 설계변수를 반영하여 제작도면을 완성한다. 그리고 이를 기반으로 소요부품명세서를 종합하여 자재소요서를 작성한다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 제작도면 작성&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;4082&quot; data-origin-height=&quot;2630&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/piYeM/btsO18oEZHm/TFMxTz1IXflukm9xQC5zO0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/piYeM/btsO18oEZHm/TFMxTz1IXflukm9xQC5zO0/img.png&quot; data-alt=&quot;제작도면 계층 구조&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/piYeM/btsO18oEZHm/TFMxTz1IXflukm9xQC5zO0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpiYeM%2FbtsO18oEZHm%2FTFMxTz1IXflukm9xQC5zO0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;613&quot; height=&quot;395&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;4082&quot; data-origin-height=&quot;2630&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;제작도면 계층 구조&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;b&gt;최종 시제품 레이아웃의 조립도와 부품도를 작성&lt;/b&gt;한다. 이때 위 그림과 같이 &lt;b&gt;계층 구조를 형성하여 도면을 관리&lt;/b&gt;한다. 시스템의 최종 조립도가 &lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;계층 구조에서&lt;span&gt; &lt;/span&gt;&lt;/span&gt;최상위에 위치하며 도번은 100으로 정의한다. 해당 도면이 조립도라는 것을 나타내기 위해 도명에 ASSY 키워드를 추가한다. 하위 계층&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;에는 상위 조립도를 조립하기 위해 필요한 구성품의 조립도와, 동일한 계층에 속한 조립도에 포함되지 않는 부품들의 부품도가 위치한다. 각 조립도의 도번은 200, 300 등으로 새롭게 정의하고, 각 부품도의 도번은 101, 102 등으로 정의하여 100번 조립도에 소속되어 있다는 의미를 나타낸다. 나머지 조립도 또한 &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;동일한 방식으로 계층을 나누어 도면을 관리한다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2.1. 조립도&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;4097&quot; data-origin-height=&quot;1367&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/NKpwr/btsO2D2NDiv/tf4FcpcQZ4SefBs1I7JJu0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/NKpwr/btsO2D2NDiv/tf4FcpcQZ4SefBs1I7JJu0/img.png&quot; data-alt=&quot;조립도와 소요부품명세서&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/NKpwr/btsO2D2NDiv/tf4FcpcQZ4SefBs1I7JJu0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FNKpwr%2FbtsO2D2NDiv%2Ftf4FcpcQZ4SefBs1I7JJu0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;704&quot; height=&quot;235&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;4097&quot; data-origin-height=&quot;1367&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;조립도와 소요부품명세서&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;조립도는 한 구성품에 대해서 &lt;b&gt;부품들이 어떻게 조립되어 있는지 나타낸 도면&lt;/b&gt;이다. 정면도, 평면도, 우측면도로 구성품의 &lt;b&gt;형상&lt;/b&gt;을 나타내고, 전체 크기 등 주요한 &lt;b&gt;치수&lt;/b&gt; 위주로 기입한다. 필요에 따라서는 구성품의 내부 구조를 보여주기 위한 단면도 또한 추가한다. 조립도의 우측 상단에는 &lt;b&gt;소요부품명세서&lt;/b&gt;를 표로 작성한다. 소요부품명세서의 순번은 각 구성품 혹은 부속품에 할당된 번호이며, 주요한 부품 위주로 조립도에서 지시선을 끌어내어 번호를 표시한다. 품번과 품명에는 설계 공동체 내에서 통용되는 고유번호와 이름을 각각 기입하고, 재질에는 가공품일 경우에는 원소재 재질을, 규격품일 경우에는 발주사에서 사용하는 모델명을 기입한다. 수량에는 해당 구성품을 &lt;span style=&quot;letter-spacing: 0px;&quot;&gt;조립하는 데 필요한 수량을 기입하고, 비고에는 발주사 이름이나 기타 유의사항을 기입한다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2.2. 부품도&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;설계 구성원들이 새로 제작해야하는 부품들을 대상으로 부품도를 작성한다. 부품도 한 장에는 하나의 부품만 나타낼 수 있으며, △형상, &lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;△&lt;/span&gt;기본치수, &lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;△&lt;/span&gt;치수공차, &lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;△&lt;/span&gt;기하공차, &lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;△&lt;/span&gt;표면거칠기 등의 정보를 빠짐없이 기입한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3. 자재소요서 작성&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Engineering Design.png&quot; data-origin-width=&quot;7056&quot; data-origin-height=&quot;3619&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/o2EoX/btsO4q8QTzC/uYtpWzBKcGkySOgZXnDyC1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/o2EoX/btsO4q8QTzC/uYtpWzBKcGkySOgZXnDyC1/img.png&quot; data-alt=&quot;자재소요서&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/o2EoX/btsO4q8QTzC/uYtpWzBKcGkySOgZXnDyC1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fo2EoX%2FbtsO4q8QTzC%2FuYtpWzBKcGkySOgZXnDyC1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;829&quot; height=&quot;425&quot; data-filename=&quot;Engineering Design.png&quot; data-origin-width=&quot;7056&quot; data-origin-height=&quot;3619&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;자재소요서&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;제작도면이 완성되면 각 조립도에 있는 &lt;b&gt;소요부품명세서를 종합하여 자재소요서(Bill of Material, BOM)를 작성&lt;/b&gt;한다. 각 부품별로 사내품(M), 외주품(O), 구매품(P) 등으로 구분하여 조달처를 확정하고 자재소요서에 기입한다. 그리고 구분별로&amp;nbsp;자재소요서를 추가로 작성하여 관리한다. 사내품이나 외주품 제작을 위해 원자재가 필요하다면 원자재소요서 또한 작성하여 관리한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;참고문헌&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;- 김종원. (2008). 공학설계: 창의적 신제품 개발방법론. 문운당.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Engineering Design</category>
      <category>공학</category>
      <category>공학설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/393</guid>
      <comments>https://vedacube.tistory.com/393#entry393comment</comments>
      <pubDate>Fri, 12 Dec 2025 18:00:44 +0900</pubDate>
    </item>
    <item>
      <title>최적설계 | 제약조건의 정규화</title>
      <link>https://vedacube.tistory.com/352</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;1. 최적설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/336&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 설계문제 정식화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/352&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.2. 제약조건의 정규화 ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/338&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2. 최적성 조건&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/339&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/340&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2. 부등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/341&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3. KKT 최적성 조건&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/346&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 대안 형식과 이계 필요조건&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/317&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3. 선형계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/348&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 심플렉스법&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/354&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1.1. 인위변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/353&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. scipy.optimize.linprog&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/320&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4. 이차계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/103&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. qpsolvers.solve_qp&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 비제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/166&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 최속강하법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/109&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 공액경사법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/122&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 구간감소법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/123&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. 설계문제의 선형화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/130&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.2. 순차 선형계획법 SLP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/80&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.3. 순차 이차계획법 SQP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/396&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.4. 부정확 이동거리 탐색법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/321&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.5. 제약최속강하법 CSD&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 자연 영감 탐색법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/397&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 유전 알고리즘 GA&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/405&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1.1. pygad.GA&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/398&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. 미분 진화 알고리즘 DE&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/156&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2.1. scipy.optimize.differential_evolution&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 다목적 최적설계 문제&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/144&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 파레토 최적점&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/431&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 가중치 합 방법&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/213&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 비지배 정렬 유전 알고리즘 NSGA-II&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/212&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3.1. pymoo.alghrithms.moo.nsga2.NSGA2&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: justify;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1. 제약조건의 정규화&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;수치 탐색법을 이용해 최적설계를 찾아가는 과정을 종료하기 위해서는 어떠한 기준이 필요하다. 이때 제약조건이 있는 문제에서는 최적점이 등호제약조건과 부등호제약조건을 만족한다는 것이 기본적인 요구사항이다. 그러나 수치 탐색법에서는 등호제약조건과 부등호제약조건이 정확히 0이 되도록 요구하는 것은 불가능하기 때문에 유용허용오차 매개변수를 반영해야 한다. 다음과 같은 제약조건을 가진 설계문제를 고려한다고 가정해보자.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1733040113932&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
h\left ( \mathbf{x} \right ) &amp;amp;= 0 \\\\
g\left ( \mathbf{x} \right ) &amp;amp;\leq 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} h\left ( \mathbf{x} \right ) &amp;amp;= 0 \\\\ g\left ( \mathbf{x} \right ) &amp;amp;\leq 0 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;해당 설계문제에 수치 탐색법을 적용하기 위해 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;양수인 유용허용오차 매개변수(예를 들어, 0.001)를 고려할 때, 설계점이 다음 조건을 만족할 경우 제약조건에 대해 유용하다고 선언할 수 있다. 이는 유용하다고 선언한 설계대안이 제약조건을 약간 위배하더라도 수용한다는 것을 의&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;미한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1733039901119&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\left| h\left ( \mathbf{x} \right ) \right| &amp;amp;= \varepsilon \\\\
g\left ( \mathbf{x} \right ) &amp;amp;\leq \varepsilon
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \left| h\left ( \mathbf{x} \right ) \right| &amp;amp;= \varepsilon \\\\ g\left ( \mathbf{x} \right ) &amp;amp;\leq \varepsilon \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;보통 &lt;b&gt;제약조건마다 유용허용오차 값을 다르게 두지 않고 하나의 값을 정하여 모든 제약조건의 상태를 점검&lt;/b&gt;한다. 이때 제약조건마다 다른 차수의 단위(예를 들어, GPa과 mm)를 가지고 있다면 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; letter-spacing: 0px;&quot;&gt;제약조건을 위배했을 때 얼마나 위배했는지 판단하기 어렵기 때문에 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;동일한 유용허용오차 값을 적용하는 것은 바람직하지 않다. 따라서 &lt;b&gt;모든 제약조건이 비슷한 값을 가지도록 정규화 또는 무차원화&lt;/b&gt;할 필요가 있다. 이해를 돕기 위해 다음과 같은 제약조건을 고려해보자.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1733042660344&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\sigma &amp;amp;= \sigma_a\\\\
\delta &amp;amp;\leq \delta_a
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \sigma &amp;amp;= \sigma_a\\\\ \delta &amp;amp;\leq \delta_a \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;위 제약조건을 정규화하여 나타내면 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1750846731373&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
h &amp;amp;= \sigma - \sigma_a = 0 \\\\
g &amp;amp;= \delta - \delta_a \leq 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} h &amp;amp;= \sigma - \sigma_a = 0 \\\\ g &amp;amp;= \delta - \delta_a \leq 0 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;각 제약조건을 상수항에 해당하는 허용설계값으로 나누어 제약조건을 정규화하면 다음과 같이 나타낼 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1733043475409&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\overline{h} &amp;amp;= \frac{\sigma}{\sigma_a} - 1 = 0 \\\\
\overline{g} &amp;amp;= \frac{\delta}{\delta_a} - 1 \leq 0 
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \overline{h} &amp;amp;= \frac{\sigma}{\sigma_a} - 1 = 0 \\\\ \overline{g} &amp;amp;= \frac{\delta}{\delta_a} - 1 \leq 0 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;위와 같이 정규화한 제약조건에 유용허용오차 매개변수까지 고려하여 나타내면 다음과 같다. 이와 같이 제약조건을 정규화하면 제약조건에 따라 유용허용오차 값을 다르게 할 필요 없이 하나의 값만을 사용할 수 있다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1733043855120&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\left| \overline{h} \right| &amp;amp;= \left| \frac{\sigma}{\sigma_a} - 1 \right| = \varepsilon \\\\
\overline{g} &amp;amp;= \frac{\delta}{\delta_a} - 1 \leq \varepsilon 
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \left| \overline{h} \right| &amp;amp;= \left| \frac{\sigma}{\sigma_a} - 1 \right| = \varepsilon \\\\ \overline{g} &amp;amp;= \frac{\delta}{\delta_a} - 1 \leq \varepsilon \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;상수항이 없거나 허용설계값이 0인 제약조건에 대해서는 위와 같은 방법으로는 정규화할 수 없다. 이러한 경우에는 제약조건을 백분율로 변형하기 위해 상수 100으로 나누거나, 설계변수의 계수로 나누거나, 제약조건 함수에 대한 전형적인 상수로 나누어 정규화할 수 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;있다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: justify;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;2. 설계변수의 정규화&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;제약조건 외에도 설계변수들이 다른 차수의 크기를 가진다면, 비슷한 차수를 갖도록 설계변수들을 정규화하는 것이 바람직하다. 다음과 같이 상한과 하한을 가진 설계변수를 고려해보자.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1750847102362&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
a \leq x \leq b
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} a \leq x \leq b \end{align}$$&lt;/div&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;수치 탐색법에서 유용한 정규화 방법은 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;① -1과 1 사이로 정규화된 설계변수&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1750847297161&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
-1 \leq y \leq 1;~~~~y=\frac{2x}{b-a}-\frac{b+a}{b-a}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} -1 \leq y \leq 1;~~~~y=\frac{2x}{b-a}-\frac{b+a}{b-a} \end{align}$$&lt;/div&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;② 최댓값이 1로 정규화된 설계변수&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1750847425352&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\frac{a}{b} \leq y \leq 1;~~~~y=\frac{x}{b}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \frac{a}{b} \leq y \leq 1;~~~~y=\frac{x}{b} \end{align}$$&lt;/div&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;③ 중앙값으로 정규화된 설계변수&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1750847601615&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\frac{2a}{b+a} \leq y \leq \frac{2b}{b+a};~~~~y=\frac{2x}{b+a}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \frac{2a}{b+a} \leq y \leq \frac{2b}{b+a};~~~~y=\frac{2x}{b+a} \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: justify;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3. 예제&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;다음과 같이 주어진 등호제약조건과 부등호제약조건을 정규화하여 나타내보자.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1750848195386&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
h\left(\mathbf{x}\right) &amp;amp;= x_1^2+\frac{1}{2x_2}-18 = 0\\\\
g\left(\mathbf{x}\right) &amp;amp;= 500x_1 - 30000x_2 \leq 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} h\left(\mathbf{x}\right) &amp;amp;= x_1^2+\frac{1}{2x_2}-18 = 0\\\\ g\left(\mathbf{x}\right) &amp;amp;= 500x_1 - 30000x_2 \leq 0 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;등호제약조건을 상수로 정규화하면 다음과 같이 나타낼 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1750848436000&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\overline{h}\left(\mathbf{x}\right) &amp;amp;= \frac{x_1^2}{18}+\frac{1}{36x_2}-1 = 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \overline{h}\left(\mathbf{x}\right) &amp;amp;= \frac{x_1^2}{18}+\frac{1}{36x_2}-1 = 0 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;부등호제약조건에 상수가 없으므로, 두 설계변수의 계수 중 큰 값으로 나누어 정규화하면 다음과 같이 나타낼 수 있다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1750848443664&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\overline{g}\left(\mathbf{x}\right) &amp;amp;= \frac{1}{60}x_1 - x_2 \leq 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \overline{g}\left(\mathbf{x}\right) &amp;amp;= \frac{1}{60}x_1 - x_2 \leq 0 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1733039176505&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 설계문제 정식화&quot; data-og-description=&quot;1. 설계문제 정식화&amp;nbsp; &amp;nbsp;설계를 최적화하기 위해서는 설계문제와 제한조건을 수학적으로 정의하여 정식화(formulation)할 필요가 있다. 이때 정식화가 얼마나 합리적인지에 따라 최적해의 좋고 나쁨&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/336&quot; data-og-url=&quot;https://vedacube.tistory.com/336&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/Qh92Q/hyXGMPMTaW/vY6Y9a71NNYVV1MzHYiUWK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/iydn5/hyXDiv4pgG/uJQkfOj5WisqFxCCwt9Rn0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cg38Nq/hyXC872nbk/4mGPHE8SsVMdd4BNVEkknK/img.png?width=1692&amp;amp;height=1777&amp;amp;face=0_0_1692_1777&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/336&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/336&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/Qh92Q/hyXGMPMTaW/vY6Y9a71NNYVV1MzHYiUWK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/iydn5/hyXDiv4pgG/uJQkfOj5WisqFxCCwt9Rn0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cg38Nq/hyXC872nbk/4mGPHE8SsVMdd4BNVEkknK/img.png?width=1692&amp;amp;height=1777&amp;amp;face=0_0_1692_1777');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 설계문제 정식화&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 설계문제 정식화&amp;nbsp; &amp;nbsp;설계를 최적화하기 위해서는 설계문제와 제한조건을 수학적으로 정의하여 정식화(formulation)할 필요가 있다. 이때 정식화가 얼마나 합리적인지에 따라 최적해의 좋고 나쁨&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #ffffff; color: #222222; text-align: left;&quot;&gt;Arora, J. S. (2016).&amp;nbsp;&lt;/span&gt;&lt;i&gt;Introduction to optimum design&lt;/i&gt;&lt;span style=&quot;background-color: #ffffff; color: #222222; text-align: left;&quot;&gt;. Elsevier.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Optimum Design</category>
      <category>공학</category>
      <category>최적설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/352</guid>
      <comments>https://vedacube.tistory.com/352#entry352comment</comments>
      <pubDate>Fri, 5 Dec 2025 18:00:05 +0900</pubDate>
    </item>
    <item>
      <title>퀀트 프로젝트 | 파이썬으로 전자공시시스템 DART에서 재무제표 불러오기 OpenDartReader</title>
      <link>https://vedacube.tistory.com/303</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. OpenDartReader&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;6.png&quot; data-origin-width=&quot;5798&quot; data-origin-height=&quot;1359&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/I68sb/btsQeBIp9uo/co3BwcpYztedVfvOyfTSq0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/I68sb/btsQeBIp9uo/co3BwcpYztedVfvOyfTSq0/img.png&quot; data-alt=&quot;OpenDartReader 라이브러리&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/I68sb/btsQeBIp9uo/co3BwcpYztedVfvOyfTSq0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FI68sb%2FbtsQeBIp9uo%2Fco3BwcpYztedVfvOyfTSq0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;791&quot; height=&quot;185&quot; data-filename=&quot;6.png&quot; data-origin-width=&quot;5798&quot; data-origin-height=&quot;1359&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;OpenDartReader 라이브러리&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;전자공시 OpenDART에서 API를 제공하는 만큼, 사용자들이 API를 원활하게 활용할 수 있도록 별도의 개발가이드를 제공하고 있다. 개발가이드를 참고하여 프로그램을 작성하면 기업공시를 자동으로 수집할 수 있다. 하지만 아직 API 사용이 익숙하지 않은 초보자들은 개발가이드를 참고하더라도 프로그램을 작성하기 어려워 진입장벽이 높은 편이다. 한편, OpenDartReader 라이브러리는 &lt;b&gt;전자공시 OpenDART의 API를 통해 기업공시를 불러오는 오픈소스&lt;/b&gt;로,&amp;nbsp;개발가이드에 비해 진입장벽이 낮은 편이라 많이 사용되고 있다. 해당 라이브러리는 아래 명령어를 명령 프롬프트에 입력하여 설치할 수 있으며, 아래 링크로 접속하면 OpenDartReader 라이브러리에 대한 설명과 사용방법을 확인할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;cpp&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;cpp&quot;&gt;&lt;code&gt;pip install opendartreader&lt;/code&gt;&lt;/pre&gt;
&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;GitHub - FinanceData/OpenDartReader: Open DART Reader&quot; data-ke-align=&quot;alignCenter&quot; data-og-description=&quot;Open DART Reader. Contribute to FinanceData/OpenDartReader development by creating an account on GitHub.&quot; data-og-host=&quot;github.com&quot; data-og-source-url=&quot;https://github.com/FinanceData/OpenDartReader&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cR0zYW/hyULVRaLpH/SYhAzkuXd6AB7o68iFYndK/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600&quot; data-og-url=&quot;https://github.com/FinanceData/OpenDartReader&quot;&gt;&lt;a href=&quot;https://github.com/FinanceData/OpenDartReader&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://github.com/FinanceData/OpenDartReader&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cR0zYW/hyULVRaLpH/SYhAzkuXd6AB7o68iFYndK/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;GitHub - FinanceData/OpenDartReader: Open DART Reader&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Open DART Reader. Contribute to FinanceData/OpenDartReader development by creating an account on GitHub.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;github.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2. 파이썬 라이브러리 설치&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;OpenDartReader 라이브러리로 기업공시를 표 형태로 다루기 위해서는 몇 가지 라이브러리를 추가로 설치해야 한다. 인터넷에 연결된 상태에서 명령 프롬프트에 아래 명령어를 입력하는 것으로 설치할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1768469614330&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;pip install numpy pandas&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3. 프로젝트&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3.1. &lt;b&gt;코스피 코스닥 종목코드 목록 생성&lt;/b&gt; &lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1770906043199&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;퀀트 프로젝트 | 파이썬으로 코스피 코스닥 종목코드 불러오기 FinanceDataReader&quot; data-og-description=&quot;1. 코스피 코스닥 종목코드 불러오기 지금까지 퀀트 전략을 공부했다면 이제 전략을 직접 구현해보자. 전략을 구현하기에 앞서 투자하고자 하는 주식 시장의 모든 상장 종목과 종목코드를 알아&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/299&quot; data-og-url=&quot;https://vedacube.tistory.com/299&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/tskhN/dJMb9c9tXI1/Bh69LuFamKPGBSEuovy941/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/ddLZyp/dJMb9frBv33/UbabHLvrnaHqIrmJNHxcW0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/vICd7/dJMb9lk3dva/z6j4U9XLzHFwsB3a3c5e0k/img.png?width=3468&amp;amp;height=1571&amp;amp;face=0_0_3468_1571&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/299&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/299&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/tskhN/dJMb9c9tXI1/Bh69LuFamKPGBSEuovy941/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/ddLZyp/dJMb9frBv33/UbabHLvrnaHqIrmJNHxcW0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/vICd7/dJMb9lk3dva/z6j4U9XLzHFwsB3a3c5e0k/img.png?width=3468&amp;amp;height=1571&amp;amp;face=0_0_3468_1571');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;퀀트 프로젝트 | 파이썬으로 코스피 코스닥 종목코드 불러오기 FinanceDataReader&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 코스피 코스닥 종목코드 불러오기 지금까지 퀀트 전략을 공부했다면 이제 전략을 직접 구현해보자. 전략을 구현하기에 앞서 투자하고자 하는 주식 시장의 모든 상장 종목과 종목코드를 알아&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3.2. &lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;전자공시시스템 DART 오픈 API 인증키 신청&lt;/span&gt;&lt;/b&gt; &lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1770906047268&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;퀀트 프로젝트 | 전자공시시스템 DART 오픈API 인증키 신청&quot; data-og-description=&quot;1. 전자공시시스템 전자공시시스템(Data Analysis, Retrieval and Transfer System, DART)은 한국거래소에 상장한 기업의 공시 서류를 온라인으로 조회할 수 있는 시스템이다. 상장 기업이 재무제표를 포함한 &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/372&quot; data-og-url=&quot;https://vedacube.tistory.com/372&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bPdSlz/dJMb86OXR0c/yd25TEk8zI4Pvt8AZG4R00/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/Zqzjw/dJMb89x9AS4/jt2lLRMI84GFjkQP4CK0q0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/32t0O/dJMb83SeSd6/U122P2tXZUajj66K8TPskK/img.png?width=5332&amp;amp;height=3092&amp;amp;face=0_0_5332_3092&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/372&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/372&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bPdSlz/dJMb86OXR0c/yd25TEk8zI4Pvt8AZG4R00/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/Zqzjw/dJMb89x9AS4/jt2lLRMI84GFjkQP4CK0q0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/32t0O/dJMb83SeSd6/U122P2tXZUajj66K8TPskK/img.png?width=5332&amp;amp;height=3092&amp;amp;face=0_0_5332_3092');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;퀀트 프로젝트 | 전자공시시스템 DART 오픈API 인증키 신청&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 전자공시시스템 전자공시시스템(Data Analysis, Retrieval and Transfer System, DART)은 한국거래소에 상장한 기업의 공시 서류를 온라인으로 조회할 수 있는 시스템이다. 상장 기업이 재무제표를 포함한&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3.3. 전자공시시스템 DART에서 재무제표 수집&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;# 라이브러리 추가
import OpenDartReader
import pandas as pd
import numpy as np
import time

# API 객체 생성
api_key = 'DART에서 발급 받은 인증키로 해당 문자열을 대체하세요'
dart = OpenDartReader(api_key)

# 저장된 종목코드 불러오기
try:
    code_data = pd.read_excel('01_KRX_stock_list.xlsx')
    code_data = code_data['Code'].tolist()
except FileNotFoundError:
    print('01_KRX_stock_list.xlsx 파일이 없습니다. 이전 코드를 먼저 실행해주세요.')
    code_data = []

# 재무재표 연도와 항목 정의하기
year = 2024
financeIndex = ['자산총계', '자본총계', '부채총계', '당기순이익', '^매출(?:액)?$', '영업활동.*현금흐름']

# 종목코드별 DART 재무재표 불러오기
print('Starting...')
table = pd.DataFrame(columns=financeIndex, index=code_data)
for idx, firm_code in enumerate(code_data):
    print(idx + 1, '/', len(code_data))
    result = dart.finstate_all(firm_code[1:], year)
    for index in financeIndex:
        try:
            table.loc[firm_code, index] = int(result[result['account_nm'].str.replace(' ', '').str.contains(index, regex=True)]['thstrm_amount'].to_list()[0])
        except:
            table.loc[firm_code, index] = None
    time.sleep(0.3)
table.columns = ['자산총계', '자본총계', '부채총계', '당기순이익', '매출액', '영업활동현금흐름']

# 재무재표 저장
table.to_excel('06_financeTableDart.xlsx')
print('Completed!')&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/cq2Esy/dJMcadOeB7m/624pgl782zQPDy4Ifz4Kz0/06_financeTableDart.xlsx?attach=1&amp;amp;knm=tfile.xlsx&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;06_financeTableDart.xlsx&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.15MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;[함께 읽으면 좋은 페이지]&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1770880175507&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;퀀트 프로젝트 | 파이썬 기반 네이버페이 증권 주가 크롤링&quot; data-og-description=&quot;1. 네이버페이 증권 주가 크롤링 가치 지표와 추세 지표를 직접 계산하려면 해당 종목의 주가 정보가 필요하다. 이때 네이버페이 증권에서 제공하는 정보를 활용하면 임의의 종목에 대해서 특정&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/235&quot; data-og-url=&quot;https://vedacube.tistory.com/235&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cOaC3a/dJMb9cBEacW/E04wergGkJ1AG3MfKhOOdk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/dirQlG/dJMb9aKA9Pc/cNZpgCFFKiqi0AKhy4zTt0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/Lj9v2/dJMb8864V2S/VdzCzF13FKeXhPWvUkKRG1/img.png?width=3528&amp;amp;height=1329&amp;amp;face=0_0_3528_1329&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/235&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/235&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cOaC3a/dJMb9cBEacW/E04wergGkJ1AG3MfKhOOdk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/dirQlG/dJMb9aKA9Pc/cNZpgCFFKiqi0AKhy4zTt0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/Lj9v2/dJMb8864V2S/VdzCzF13FKeXhPWvUkKRG1/img.png?width=3528&amp;amp;height=1329&amp;amp;face=0_0_3528_1329');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;퀀트 프로젝트 | 파이썬 기반 네이버페이 증권 주가 크롤링&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 네이버페이 증권 주가 크롤링 가치 지표와 추세 지표를 직접 계산하려면 해당 종목의 주가 정보가 필요하다. 이때 네이버페이 증권에서 제공하는 정보를 활용하면 임의의 종목에 대해서 특정&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;파이썬이란?&quot; data-ke-align=&quot;alignCenter&quot; data-og-description=&quot;1. 프로그래밍 언어&amp;nbsp; &amp;nbsp;컴퓨터가 작업을 수행하기 위해서는 논리적인 순서에 맞게 명령문이 나열된 작업지시서를 사람으로부터 전달 받아야 한다. 하지만 컴퓨터는 0과 1로 구성된 기계어(machine &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/358&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bjNK6E/hyYckZOBNk/dqVbvyUDyfT4fKhbYHkayk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/rAMEJ/hyYci143wb/0GLWxsCrb8QsREWNyCcCh1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800&quot; data-og-url=&quot;https://vedacube.tistory.com/358&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/358&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/358&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bjNK6E/hyYckZOBNk/dqVbvyUDyfT4fKhbYHkayk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/rAMEJ/hyYci143wb/0GLWxsCrb8QsREWNyCcCh1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;파이썬이란?&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 프로그래밍 언어&amp;nbsp; &amp;nbsp;컴퓨터가 작업을 수행하기 위해서는 논리적인 순서에 맞게 명령문이 나열된 작업지시서를 사람으로부터 전달 받아야 한다. 하지만 컴퓨터는 0과 1로 구성된 기계어(machine&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;- GIL's LAB. (2022). 손에 잡히는 퀀트 투자 with 파이썬. 위키북스.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Capital/Quant</category>
      <category>재테크</category>
      <category>퀀트</category>
      <category>파이썬</category>
      <category>프로젝트</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/303</guid>
      <comments>https://vedacube.tistory.com/303#entry303comment</comments>
      <pubDate>Fri, 28 Nov 2025 18:00:25 +0900</pubDate>
    </item>
    <item>
      <title>공학설계 | 견실최적설계(3): 민감도 분석</title>
      <link>https://vedacube.tistory.com/411</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/386&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 공학설계&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 제품기획&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/390&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 요구사항목록&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 개념설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/391&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 설계문제와 기능구조도&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/325&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. 동작원리와 설계대안&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 기본설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/392&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. 시제품 레이아웃과 공학해석&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/404&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2. 견실최적설계&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/409&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.1. 문제 정의&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/410&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.2. 제1차 실험 설계 및 수행&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/411&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.3. 민감도 분석 ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 상세설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/393&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 제작도면과 자재소요서&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 민감도 분석&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;4976&quot; data-origin-height=&quot;2737&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bfUtwy/btsP8Bvkl3X/0UaFICV86J7VNtdRAKNvw0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bfUtwy/btsP8Bvkl3X/0UaFICV86J7VNtdRAKNvw0/img.png&quot; data-alt=&quot;제1차 실험 결과&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bfUtwy/btsP8Bvkl3X/0UaFICV86J7VNtdRAKNvw0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbfUtwy%2FbtsP8Bvkl3X%2F0UaFICV86J7VNtdRAKNvw0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;682&quot; height=&quot;375&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;4976&quot; data-origin-height=&quot;2737&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;제1차 실험 결과&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;Larger-the-better 설계목표 기능변수에 대하여 위와 같은 실험 결과를 얻었다면, &lt;b&gt;실험 결과로부터 도출한 S/N비를 기반으로 각 설계변수의 민감도를 분석하고 S/N비를 최대로 만드는 탐색 방향을 결정&lt;/b&gt;한다. &lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;위 실험 결과에 따르면, 조합번호 5번과 8번에 대해서 S/N비가 37.2 dB로 가장 크게 나타났다. 이는 각각 설계변수 조합 [2, 2, 3, 1]과 [3, 2, 1, 3]에 대응된다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;5489&quot; data-origin-height=&quot;2716&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/6zmbW/btsP7e1PYW3/LigAvaGTNzwIyfDDgGKOR0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/6zmbW/btsP7e1PYW3/LigAvaGTNzwIyfDDgGKOR0/img.png&quot; data-alt=&quot;민감도 분석&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/6zmbW/btsP7e1PYW3/LigAvaGTNzwIyfDDgGKOR0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F6zmbW%2FbtsP7e1PYW3%2FLigAvaGTNzwIyfDDgGKOR0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;818&quot; height=&quot;405&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;5489&quot; data-origin-height=&quot;2716&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;민감도 분석&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;민감도를 관찰하기 위해 각 설계변수별로 수준1, 수준2, 수준3에서의 S/N비 평균값을 계산하여 그림으로 나타내면 위 그림과 같다.&lt;/span&gt; 민감도 분석 결과를 기반으로 &lt;b&gt;S/N비를 최대로 만드는 설계변수 조합&lt;/b&gt;을 빨간색 원으로 표시하여 나타내면 [3, 2, 2, 3]에 해당한다. 또한 각 설계변수별로 S/N비의 최대값과 최소값을 비교하였을 때 &lt;b&gt;설계변수 1과 2는 다른 두 설계변수에 비해 민감도가 높은 변수&lt;/b&gt;라는 것을 알 수 있다. &lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;앞선 실험에서는&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;해당 조합으로 실험하지 않았기 때문에 추가로 실험&lt;/b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;하여 조합번호 5번과 8번에 비해 더 높은 S/N비가 도출되는지 관찰한다. &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; letter-spacing: 0px;&quot;&gt;실험하기에 앞서 아래 식을 이용하면 해당 설계변수 조합에서 S/N비의 값을 추정할 수 있다. 해당 식에서 T는 모든 S/N비의 평균값을 의미하며, 설계변수 A가 수준 i, B가 수준 j, C가 수준 k, D가 수준 p일 때 S/N비 평균값을 각각 대입하면 해당 설계변수 조합에서 S/N비의 최대값 또는 최소값을 추정할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1756212430236&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\widehat{SN} = \overline{T} + \left(\overline{A}_{i}-\overline{T}\right) + \left(\overline{B}_{j}-\overline{T}\right) + \left(\overline{C}_{k}-\overline{T}\right) + \left(\overline{D}_{p}-\overline{T}\right)
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \widehat{SN} = \overline{T} + \left(\overline{A}_{i}-\overline{T}\right) + \left(\overline{B}_{j}-\overline{T}\right) + \left(\overline{C}_{k}-\overline{T}\right) + \left(\overline{D}_{p}-\overline{T}\right) \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;위 식을 기반으로 설계변수 조합 [3, 2, 2, 3]에서의 S/N비를 추정하면 아래와 같다. 조합번호 5번과 8번에 해당하는 S/N비 37.2 dB보다 &lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;설계변수 조합 [3, 2, 2, 3]에서&lt;span&gt;&amp;nbsp;더&lt;/span&gt;&lt;/span&gt; 높은 S/N비가 도출될 것으로 기대할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1756212990284&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\widehat{SN} &amp;amp;= 35.3 + \left(36.1-35.3\right) + \left(36.6-35.3\right) + \left(35.8-35.3\right) + \left(35.7-35.3\right) \\\\
&amp;amp;= 38.3
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \widehat{SN} &amp;amp;= 35.3 + \left(36.1-35.3\right) + \left(36.6-35.3\right) + \left(35.8-35.3\right) + \left(35.7-35.3\right) \\\\ &amp;amp;= 38.3 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: justify;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2. 설계변수 탐색 범위 갱신&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;5586&quot; data-origin-height=&quot;1149&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/S8KXv/btsP7AKzLWV/4Kg3nXq1S8KFRVIs05g8r1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/S8KXv/btsP7AKzLWV/4Kg3nXq1S8KFRVIs05g8r1/img.png&quot; data-alt=&quot;설계변수 탐색 범위 갱신&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/S8KXv/btsP7AKzLWV/4Kg3nXq1S8KFRVIs05g8r1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FS8KXv%2FbtsP7AKzLWV%2F4Kg3nXq1S8KFRVIs05g8r1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;850&quot; height=&quot;175&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;5586&quot; data-origin-height=&quot;1149&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;설계변수 탐색 범위 갱신&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt; &amp;nbsp; &amp;nbsp;최적점에 도달하기 위해 제1차 실험 결과를 기반으로 제2차 실험을 설계한다. 이때 &lt;b&gt;민감도가 낮은 설계변수는 실험에 포함하지 않고 S/N비를 최대로 만드는 수준으로 고정&lt;/b&gt;한다. &lt;b&gt;민감도가 상대적으로 높은&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;설계변수에 대해서 탐색 범위를 갱신&lt;/b&gt;한다. 설계변수 1은 양의 방향으로 갈수록 S/N비가 상승하는 추세를 보이므로, 해당 방향으로 설계변수를 탐색하기 위해&amp;nbsp;수준 3을 수준 1로 갱신하고 해당 방향을 따라 수준 2와 수준 3을 설정한다. 이때 &lt;b&gt;탐색 범위의 크기는 이전 실험보다 작게 결정&lt;/b&gt;한다. 설계변수 2는 초기값으로 향할수록 S/N비가 상승하는 추세를 보이므로, 해당 수준의 주변부를 정밀하게 탐색한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: justify;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3. 제2차 실험 설계 및 수행&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;4149&quot; data-origin-height=&quot;2736&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b24LJ1/btsP8zqRV52/fDbVlhkkyBYgzzxNVrPAH0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b24LJ1/btsP8zqRV52/fDbVlhkkyBYgzzxNVrPAH0/img.png&quot; data-alt=&quot;견실최적설계 제2차 실험계획서&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b24LJ1/btsP8zqRV52/fDbVlhkkyBYgzzxNVrPAH0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb24LJ1%2FbtsP8zqRV52%2FfDbVlhkkyBYgzzxNVrPAH0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;523&quot; height=&quot;345&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;4149&quot; data-origin-height=&quot;2736&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;견실최적설계 제2차 실험계획서&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;설계변수 탐색 범위를 갱신했다면 제1차 실험과 동일한 과정을 거쳐 최적점 탐색을 반복한다. 설계변수 수준의 개수와 설계변수 개수에 따라 적절한 수직행렬을 선택하고, 수직행렬을 중심으로 실험계획서를 작성한다. 사용환경을 재현하는 설비 내에서 각 사용환경을 재현한 뒤 실험을 수행하여 측정값과 S/N비를 기입한다. 실험 결과를 기반으로 설계변수별로 민감도를 분석하여 최적점 도달 여부를 가늠한다. 해당 과정은 설계변수가 최적점에 도달했다고 판단할 때까지 반복한다. 이와 같은 과정을 반복하는 다구치 방법론은 실험과 통계 기반의 최적화 방법 중 하나로, 원리 자체는 최속강하법과 동일하다. 그러나 최속강하법은 목적함수가 수학적으로 모델링 되어 있어 알고리즘으로 시뮬레이션이 가능한 반면에, &lt;b&gt;다구치 방법론에서 다루는 목적함수는 모델링 되어 있지 않거나 모델링 하기 어려워 실험을 통해 목적함수의 값을 측정하여 최적점을 탐색&lt;/b&gt;한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;4. Nominal-the-best 견실최적설계&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;2692&quot; data-origin-height=&quot;1521&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ceG7pt/btsP8I9Fz4n/cAI66UfNnyiz16rNruZGM0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ceG7pt/btsP8I9Fz4n/cAI66UfNnyiz16rNruZGM0/img.png&quot; data-alt=&quot;Nominal-the-best 견실최적설계&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ceG7pt/btsP8I9Fz4n/cAI66UfNnyiz16rNruZGM0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FceG7pt%2FbtsP8I9Fz4n%2FcAI66UfNnyiz16rNruZGM0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;469&quot; height=&quot;265&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;2692&quot; data-origin-height=&quot;1521&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Nominal-the-best 견실최적설계&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;Smaller-the-better와 Larger-the-better 설계목표 기능변수를 다루는 경우에는 앞서 소개한 방법을 따르면 사용환경에 견실한 최적점에 도달할 수 있다. 그러나 Nominal-the-best 설계목표 기능변수의 경우에는 &lt;b&gt;S/N비를 최대화하더라도 오차의 편차가 최소화될 뿐, 오차가 목표값인 0에 근접하지는 않는다.&lt;/b&gt; 따라서 앞선 방식과 동일하게 &lt;b&gt;S/N비를 최대화하고, 측정값을 목표값에 근접시키는 작업을 추가로 수행&lt;/b&gt;한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;6.png&quot; data-origin-width=&quot;5390&quot; data-origin-height=&quot;2737&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dapfB4/btsP8OPwvpG/IhiKWOI2y9RUVpEhpdmJL1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dapfB4/btsP8OPwvpG/IhiKWOI2y9RUVpEhpdmJL1/img.png&quot; data-alt=&quot;Nominal-the-best 견실최적설계 실험계획서&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dapfB4/btsP8OPwvpG/IhiKWOI2y9RUVpEhpdmJL1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdapfB4%2FbtsP8OPwvpG%2FIhiKWOI2y9RUVpEhpdmJL1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;718&quot; height=&quot;365&quot; data-filename=&quot;6.png&quot; data-origin-width=&quot;5390&quot; data-origin-height=&quot;2737&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Nominal-the-best 견실최적설계 실험계획서&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;오차를 0으로 근접시키는 단계는 &lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;S/N비를 최대화하여 오차의 편차를 최소화한 상태에서 시작한다. &lt;b&gt;설계변수 조합별로 오차의 평균을 계산하여 오차에 대한 민감도 분석을 수행&lt;/b&gt;한다. &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;S/N비와 오차에 대한 민감도 분석 결과를 비교하여,&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;설계변수 중에서 S/N비에는 둔감하면서도 오차에는 민감한 변수들을 분&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;류한다. 분류한 설계변수들 중 오차에 가장 민감한 변수만을 조정하여 오차를 0에 근접시킬 수 있도록 나머지 설계변수들은 오차를 가장 작게 만드는 수준으로 고정한다. 마지막으로 남은 설계변수를 조정하기 위해 아래 식에서 해당 설계변수에 대응되는 항만 미지수로 두고 풀이한다. 이때 오차 추정값은 0을 목표로 하므로 좌변에는 0을 대입한다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1756277465466&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\widehat{e} &amp;amp;= \overline{e} + \left(\overline{A}_{i}-\overline{e}\right) + \left(\overline{B}_{j}-\overline{e}\right) + \left(\overline{C}_{k}-\overline{e}\right) + \left(\overline{D}_{p}-\overline{e}\right) \\\\
&amp;amp;= 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \widehat{e} &amp;amp;= \overline{e} + \left(\overline{A}_{i}-\overline{e}\right) + \left(\overline{B}_{j}-\overline{e}\right) + \left(\overline{C}_{k}-\overline{e}\right) + \left(\overline{D}_{p}-\overline{e}\right) \\\\ &amp;amp;= 0 \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;위 방정식을 풀이하면 오차가 0에 근접한 상태에서 해당 설계변수가 가져야할 오차값의 평균을 알 수 있다. 앞선 실험에서 해당 설계변수의 수준별 오차 정도를 확인한 뒤 선형 보간을 수행하여 오차값에 해당하는 수준값을 도출한다. 이로써 모든 설계변수가 고정되었으므로 해당 설계조합을 대상으로 실험을 수행하여 S/N비는 최대가 되는지, 오차값은 0에 근접하는지 확인한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;[함께 읽으면 좋은 페이지]&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1766056773231&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;공학설계 | 상세설계: 제작도면과 자재소요서&quot; data-og-description=&quot;1. 공학설계 2. 제품기획 2.1. 요구사항목록 3. 개념설계 3.1. 설계문제와 기능구조도 3.2. 동작원리와 설계대안 4. 기본설계 4.1. 시제품 레이아웃과 공학해석 4.2. 견실최적설계 4.2.1. 문제 정의 4.2.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/393&quot; data-og-url=&quot;https://vedacube.tistory.com/393&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/r81hh/hyZPtodgEf/fV7ljUpiLCg7G2XA0bxDEK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/oI8Da/hyZPNZWq9U/cvvFo5enwlOi89pgI8hd30/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bPfE80/hyZP74Vvc8/AzoH4dFk4RZdPjYKE4I8Ek/img.png?width=7056&amp;amp;height=3619&amp;amp;face=0_0_7056_3619&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/393&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/393&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/r81hh/hyZPtodgEf/fV7ljUpiLCg7G2XA0bxDEK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/oI8Da/hyZPNZWq9U/cvvFo5enwlOi89pgI8hd30/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bPfE80/hyZP74Vvc8/AzoH4dFk4RZdPjYKE4I8Ek/img.png?width=7056&amp;amp;height=3619&amp;amp;face=0_0_7056_3619');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;공학설계 | 상세설계: 제작도면과 자재소요서&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 공학설계 2. 제품기획 2.1. 요구사항목록 3. 개념설계 3.1. 설계문제와 기능구조도 3.2. 동작원리와 설계대안 4. 기본설계 4.1. 시제품 레이아웃과 공학해석 4.2. 견실최적설계 4.2.1. 문제 정의 4.2.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1756265660223&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 비제약조건 문제 수치해법(1): 최속강하법&quot; data-og-description=&quot;1. 경사도 기반 수치해법 비선형&amp;middot;비제약조건 최적설계문제는 해석적인 방법으로 다루기에는 다소 무리가 있어, 이를 풀기 위한 수치적 방법들이 개발되었다. 경사도 기반 수치해법은 이러한 문&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/166&quot; data-og-url=&quot;https://vedacube.tistory.com/166&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/WeWCI/hyZGbM3ymC/DATqN2AppOsxMYEkQWU32k/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/hYbjh/hyZCYoibbJ/eVyhwy7OKHMfOGh1Q7ohfK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/Dq4vP/hyZC6T8tov/B9h52nhOomhKdJyaketWS0/img.png?width=5316&amp;amp;height=1931&amp;amp;face=0_0_5316_1931&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/166&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/166&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/WeWCI/hyZGbM3ymC/DATqN2AppOsxMYEkQWU32k/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/hYbjh/hyZCYoibbJ/eVyhwy7OKHMfOGh1Q7ohfK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/Dq4vP/hyZC6T8tov/B9h52nhOomhKdJyaketWS0/img.png?width=5316&amp;amp;height=1931&amp;amp;face=0_0_5316_1931');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 비제약조건 문제 수치해법(1): 최속강하법&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 경사도 기반 수치해법 비선형&amp;middot;비제약조건 최적설계문제는 해석적인 방법으로 다루기에는 다소 무리가 있어, 이를 풀기 위한 수치적 방법들이 개발되었다. 경사도 기반 수치해법은 이러한 문&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;참고문헌&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;- 김종원. (2008). 공학설계: 창의적 신제품 개발방법론. 문운당.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;- Peace, G. S. (1993). Taguchi methods: a hands-on approach.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #ffffff; color: #0f1111; text-align: left;&quot;&gt;Addison-Wesley.&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Engineering Design</category>
      <category>공학</category>
      <category>공학설계</category>
      <category>최적설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/411</guid>
      <comments>https://vedacube.tistory.com/411#entry411comment</comments>
      <pubDate>Fri, 21 Nov 2025 18:00:14 +0900</pubDate>
    </item>
    <item>
      <title>공학설계 | 견실최적설계(2): 제1차 실험 설계 및 수행</title>
      <link>https://vedacube.tistory.com/410</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/386&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 공학설계&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 제품기획&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/390&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 요구사항목록&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 개념설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/391&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 설계문제와 기능구조도&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/325&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. 동작원리와 설계대안&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 기본설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/392&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. 시제품 레이아웃과 공학해석&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/404&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2. 견실최적설계&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/409&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.1. 문제 정의&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/410&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.2. 제1차 실험 설계 및 수행 ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/411&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.3. 민감도 분석&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 상세설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/393&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 제작도면과 자재소요서&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: justify;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 설계변수 탐색 범위&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;2649&quot; data-origin-height=&quot;1129&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/v07NJ/btsP4jQFpNf/D9DkvDRlWC1OHKLKBHcU70/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/v07NJ/btsP4jQFpNf/D9DkvDRlWC1OHKLKBHcU70/img.png&quot; data-alt=&quot;설계변수 탐색 범위&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/v07NJ/btsP4jQFpNf/D9DkvDRlWC1OHKLKBHcU70/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fv07NJ%2FbtsP4jQFpNf%2FD9DkvDRlWC1OHKLKBHcU70%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;527&quot; height=&quot;225&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;2649&quot; data-origin-height=&quot;1129&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;설계변수 탐색 범위&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;견실최적설계는 매 단계마다 설계변수 초기값과 탐색 범위를 결정한다. &lt;b&gt;첫 단계에서는 각 설계변수마다 초기값을 기준으로 음의 방향과 양의 방향으로 탐색값을 선택&lt;/b&gt;한다. 이때 기본 설계에서 선정한 설계변수의 값을 초기값으로 하여 음의 방향 탐색값을 수준1, 초기값을 수준2, 양의 방향 탐색값을 수준3으로 정의한다. 탐색 범위의 크기는 측정 오차 등 시스템과 관련된 사전 지식과 경험에 근거하여 결정한다.&lt;/span&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 사용환경 조합&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Engineering Design.png&quot; data-origin-width=&quot;3130&quot; data-origin-height=&quot;1337&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cS9GzH/btsP5KTEprJ/uqFU23U7iBW4LsatQPuAs0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cS9GzH/btsP5KTEprJ/uqFU23U7iBW4LsatQPuAs0/img.png&quot; data-alt=&quot;사용환경 조합&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cS9GzH/btsP5KTEprJ/uqFU23U7iBW4LsatQPuAs0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcS9GzH%2FbtsP5KTEprJ%2FuqFU23U7iBW4LsatQPuAs0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;574&quot; height=&quot;245&quot; data-filename=&quot;Engineering Design.png&quot; data-origin-width=&quot;3130&quot; data-origin-height=&quot;1337&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;사용환경 조합&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;사용환경은 설계목표 기능변수의 값에 영향을 주지만 설계변수로는 취급하지 않기 때문에 설계 구성원이 원하는대로 수준을 지정할 수 없다. 따라서 사용자가 시스템을 사용할 환경과 방식을 조사하여 각 사용환경의 범위를 알아내야 한다. 조사를 완료했다면 &lt;b&gt;각 사용환경별로 가장 유리한 경우와 불리한 경우로 나누고, 둘 중 하나를 선별하여 여러 가지의 사용환경 조합을 만든다.&lt;/b&gt; 조합이 많을수록 실험에 소요되는 시간과 비용이 증가하므로 가장 중요하다고 생각하는 조합 두 세 가지만 사용환경 수준으로 선정하는 것을 추천한다. 하지만 너무 많은 조합을 제외하면 견실최적설계가 실패할 수 있으므로 주의하자.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3. 수직행렬&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;각 설계변수별로 선정한 수준과 사용환경 조합을 고려하여 모든 경우의 수를 실험하는 것은 현실적으로 제약이 많다. 따라서 효율적인 실험 수행을 위해 &lt;b&gt;수직행렬&lt;/b&gt;(orthogonal array)을 생성하여 실험을 계획한다. 수직행렬은 일반적으로 아래처럼 표기한다. 아래 표현에서 &lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;E는 실험 조합의 개수, &lt;/span&gt;n은 설계변수 수준의 개수, C는 설계변수 개수를 의미한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1756114102409&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
L_E \left( n^C \right)
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} L_E \left( n^C \right) \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;견실최적설계에서 많이 사용되는 수직행렬은 L&lt;sub&gt;9&lt;/sub&gt;(3&lt;sup&gt;4&lt;/sup&gt;), L&lt;sub&gt;18&lt;/sub&gt;(2&lt;sup&gt;1&lt;/sup&gt;&lt;span style=&quot;background-color: #ffffff; color: #001d35; text-align: start;&quot;&gt;&amp;times;3&lt;sup&gt;7&lt;/sup&gt;), L&lt;sub&gt;27&lt;/sub&gt;(3&lt;sup&gt;13&lt;/sup&gt;)이 있으며, &lt;b&gt;설계변수 수준의 개수와 설계변수 개수에 따라 적절한 수직행렬을 선택하여 사용&lt;/b&gt;한다. 예를 들어, 수준 3개를 가진 설계변수 4개를 다루는 견실최적설계 문제라면 수직행렬 &lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;L&lt;/span&gt;&lt;sub&gt;9&lt;/sub&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;(3&lt;/span&gt;&lt;sup&gt;4&lt;/sup&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;)를 선택한다. 이에 해당하는 수직행렬을 나타내면 아래 그림과 같다.&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background-color: #ffffff; color: #001d35; text-align: start;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;3525&quot; data-origin-height=&quot;2485&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b9LuTU/btsP6WTYnSD/3KqWskJw4kM67xXGve2dDK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b9LuTU/btsP6WTYnSD/3KqWskJw4kM67xXGve2dDK/img.png&quot; data-alt=&quot;수직행렬&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b9LuTU/btsP6WTYnSD/3KqWskJw4kM67xXGve2dDK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb9LuTU%2FbtsP6WTYnSD%2F3KqWskJw4kM67xXGve2dDK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;617&quot; height=&quot;435&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;3525&quot; data-origin-height=&quot;2485&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;수직행렬&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;수직행렬을 관찰해보면, 한 설계변수의 수준이 1일 때 다른 설계변수의 모든 수준이 골고루 섞여있다. 따라서 해당 설계변수의 수준이 1인 경우의 S/N비 평균을 계산할 때에는 다른 설계변수의 영향이 상쇄되어 반영되지 않는다. 이처럼 민감도 분석 시 &lt;b&gt;특정 설계변수에 대한 수준별 S/N비 평균값을 계산할 때 다른 설계변수들에 의한 영향은 자체적으로 상쇄된다.&lt;/b&gt; 이러한 이유로 수직행렬을 기반으로 실험을 수행하면 실험 횟수를 줄이면서도 각 설계변수의 민감도를 독립적으로 알 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;4. 실험 설계 및 수행&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;7462&quot; data-origin-height=&quot;2737&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bADTu4/btsP77grdS3/C9DbhdpWMNALHkUw1a4Wy0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bADTu4/btsP77grdS3/C9DbhdpWMNALHkUw1a4Wy0/img.png&quot; data-alt=&quot;견실최적설계 제1차 실험계획서&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bADTu4/btsP77grdS3/C9DbhdpWMNALHkUw1a4Wy0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbADTu4%2FbtsP77grdS3%2FC9DbhdpWMNALHkUw1a4Wy0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;833&quot; height=&quot;306&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;7462&quot; data-origin-height=&quot;2737&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;견실최적설계 제1차 실험계획서&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;위 그림과 같이 &lt;b&gt;수직행렬을 중심으로 실험계획서를 작성&lt;/b&gt;한다. 실험계획서에서 수직행렬 상단에는 설계변수를 임의의 순서로 배치하고, 수직행렬 왼쪽에는 조합번호를 나열한다. 수직행렬 오른쪽에는 사용환경 조합의 수만큼 칸을 생성하고, 그 아래로 실험 결과값을 기입할 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;칸을 생성한다. &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;맨 마지막 열에는 S/N비를 계산하여 기입할 칸을 생성한다. 실험계획서를 완성했다면 &lt;b&gt;사용환경을 재현하는 설비를 별도로 개발&lt;/b&gt;하고 실험을 수행한다. 실험 순서는 실험계획서의 조합번호를 따를 필요는 없다. 설비 내에서 각 사용환경을 재현한 뒤 실험을 수행하여 측정값을 기입한다. 마지막으로 설계목표 기능변수의 목표에 맞게 S/N비를 계산하여 기입한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1766056738368&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;공학설계 | 견실최적설계(3): 민감도 분석&quot; data-og-description=&quot;1. 공학설계 2. 제품기획 2.1. 요구사항목록 3. 개념설계 3.1. 설계문제와 기능구조도 3.2. 동작원리와 설계대안 4. 기본설계 4.1. 시제품 레이아웃과 공학해석 4.2. 견실최적설계 4.2.1. 문제 정의 4.2.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/411&quot; data-og-url=&quot;https://vedacube.tistory.com/411&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/UoZkM/hyZPuAECWO/QRuSjNaPKEZeF4UT2CIlu0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bu2Sa0/hyZOM9r4eg/7vvTRFz0pN2wjrwEiVDKA1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/qaOkI/hyZP2WQK1T/Y4GRYI4KQ2qQjRIfjwPPnk/img.png?width=5489&amp;amp;height=2716&amp;amp;face=0_0_5489_2716&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/411&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/411&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/UoZkM/hyZPuAECWO/QRuSjNaPKEZeF4UT2CIlu0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bu2Sa0/hyZOM9r4eg/7vvTRFz0pN2wjrwEiVDKA1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/qaOkI/hyZP2WQK1T/Y4GRYI4KQ2qQjRIfjwPPnk/img.png?width=5489&amp;amp;height=2716&amp;amp;face=0_0_5489_2716');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;공학설계 | 견실최적설계(3): 민감도 분석&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 공학설계 2. 제품기획 2.1. 요구사항목록 3. 개념설계 3.1. 설계문제와 기능구조도 3.2. 동작원리와 설계대안 4. 기본설계 4.1. 시제품 레이아웃과 공학해석 4.2. 견실최적설계 4.2.1. 문제 정의 4.2.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;- 김종원. (2008). 공학설계: 창의적 신제품 개발방법론. 문운당.&lt;/p&gt;</description>
      <category>Engineering/Engineering Design</category>
      <category>공학</category>
      <category>공학설계</category>
      <category>최적설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/410</guid>
      <comments>https://vedacube.tistory.com/410#entry410comment</comments>
      <pubDate>Fri, 14 Nov 2025 18:00:00 +0900</pubDate>
    </item>
    <item>
      <title>공학설계 | 견실최적설계(1): 문제 정의</title>
      <link>https://vedacube.tistory.com/409</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/386&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 공학설계&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 제품기획&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/390&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 요구사항목록&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 개념설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/391&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 설계문제와 기능구조도&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/325&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. 동작원리와 설계대안&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 기본설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/392&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. 시제품 레이아웃과 공학해석&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/404&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2. 견실최적설계&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/409&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.1. 문제 정의 ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/410&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.2. 제1차 실험 설계 및 수행&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/411&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.3. 민감도 분석&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 상세설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/393&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 제작도면과 자재소요서&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 문제 정의&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;외란에도 시스템이 현 상태를 잘 유지할 때 강건하다 혹은 견실하다고 한다. &lt;b&gt;시스템이 견실하도록 설계변수를 최적화하는 과정&lt;/b&gt;을 견실최적설계(robust optimal design)라고 한다. 견실최적화를 거친 시스템은 &lt;b&gt;사용환경에 따른 기능변동량이 최소&lt;/b&gt;가 되며,&lt;b&gt; 외란 대비 성능을 나타내는 지표인 S/N비는 최대&lt;/b&gt;가 된다. 이를 최적화 문제 형식으로 나타내면 아래와 같다. 아래 형식에서 x&lt;sub&gt;n&lt;/sub&gt;은 설계변수, y&lt;sub&gt;N&lt;sub&gt;i&lt;/sub&gt;&lt;/sub&gt;는 사용환경 N&lt;sub&gt;i&lt;/sub&gt;에서 측정한 시스템의 기능값을 의미한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1751689233777&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{maximize}~~~~&amp;amp;SN = SN\left(y_{N_1},y_{N_2},\cdots,y_{N_m}\right) \\\\
\mathrm{subject~to}~~~~
&amp;amp;y_{N_i} = y_{N_i}\left(x_1,x_2,\cdots,x_n\right)
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{maximize}~~~~&amp;amp;SN = SN\left(y_{N_1},y_{N_2},\cdots,y_{N_m}\right) \\\\ \mathrm{subject~to}~~~~ &amp;amp;y_{N_i} = y_{N_i}\left(x_1,x_2,\cdots,x_n\right) \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;견실최적설계는 초기 설계변수를 시작으로 사용환경을 바꿔가면서 시스템의 기능값을 각각 측정한다. 측정한 값을 기반으로 최적화 목표에 따라 S/N비를 정의하여 계산한다. 이때 기능값들이 서로 비슷할수록 기능변동량이 작다는 것을 의미하며, S/N비는 크게 계산된다. 설계변수를 갱신하고 동일한 방법으로 실험하여 S/N비를 최대로 하는 설계변수 조합을 탐색한다. 그러나 실험 시간을 무한정으로 확보할 수는 없&lt;span style=&quot;color: #333333;&quot;&gt;기 때문에&lt;/span&gt; 단순한 시행오차로 최적값을 찾기에는 한계가 있다. 따라서 수직행렬을 이용하여 설계변수의 민감도를 분석하는 &lt;b&gt;실험계획법&lt;/b&gt; 또는 &lt;b&gt;다구치 방법론&lt;/b&gt;(Taguchi methods)를 적용한다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 설계목표 기능변수&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;4427&quot; data-origin-height=&quot;795&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kPSJH/btsO6oxA0xl/f9GE8CbdJd7dkymSdgCff0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kPSJH/btsO6oxA0xl/f9GE8CbdJd7dkymSdgCff0/img.png&quot; data-alt=&quot;설계목표 기능변수&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kPSJH/btsO6oxA0xl/f9GE8CbdJd7dkymSdgCff0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkPSJH%2FbtsO6oxA0xl%2Ff9GE8CbdJd7dkymSdgCff0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;754&quot; height=&quot;135&quot; data-origin-width=&quot;4427&quot; data-origin-height=&quot;795&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;설계목표 기능변수&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;시스템에서 어떠한 기능을 최적화할지 결정하여 설계목표 기능변수로 설정한다. 이때 설계목표 기능변수는 &lt;b&gt;에너지 또는 시간과 관련된 연속적인 물리량&lt;/b&gt;(힘, 온도, 변위, 변형량, 압력, 속도, 전압, 저항, 소요시간 등)이어야 하며, 추후 효율적인 실험을 위해 해당 물리량의 측정이 빠르고 정확하게 이루어질 수 있어야 한다. 만약 &lt;b&gt;측정하고자 하는 설계목표 기능변수가 해당 조건을 만족하지 못한다면 이를 대체할 수 있는 간접적인 물리량을 선정&lt;/b&gt;한다. 설계목표 기능변수는 최소화 상태 유지를 목표로 하는 &lt;b&gt;▲smaller-the-better&lt;/b&gt;, 최대화 상태 유지를 목표로 하는 &lt;span style=&quot;color: #333333;&quot;&gt;&lt;b&gt;▲larger-the-better&lt;/b&gt;,&lt;/span&gt; 특정 목표값 상태 유지를 목표로 하는 &lt;span style=&quot;color: #333333;&quot;&gt;&lt;b&gt;▲nominal-the-best&lt;/b&gt;로 &lt;/span&gt;구분할 수 있다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2.1. Smaller-the-better&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;b&gt;항상 양의 값을 가지면서 작을수록 좋은 설계목표&lt;/b&gt;로, 가장 이상적인 목표값은 0에 해당한다. 기능변수가 0이 되는 것은 실제로 불가능하더라도 0에 가까운 상태를 유지하는 것을 목표로 한다. 시스템 구성품의 마모량, 변형량, 오염량, 잔류량, 손실량 등이 해당 설계목표가 될 수 있다. Smaller-the-better 설계목표 기능변수의 S/N비는 각 기능변수의 합의 제곱과 각 기능변수 사이의 편차의 제곱의 합으로 다음과 같이 정의한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1756091693603&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
SN = -10~\mathrm{log}_{10}\left|\frac{y_{N_1}^2+y_{N_2}^2 + ... + y_{N_m}^2}{m}\right|~~~~[\mathrm{dB}]
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} SN = -10~\mathrm{log}_{10}\left|\frac{y_{N_1}^2+y_{N_2}^2 + ... + y_{N_m}^2}{m}\right|~~~~[\mathrm{dB}] \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2.2. Larger-the-better&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;b&gt;항상 양의 값을 가지면서 클수록 좋은 설계목표&lt;/b&gt;로, 가장 이상적인 목표값은 무한대에 해당한다. 기능변수가 무한대가 되는 것은 불가능하더라도 최상의 상태를 유지하는 것을 목표로 한다. 시스템 구성품의 강도, 수명, MTBF(mean time-between-failures) 등이 해당 설계목표가 될 수 있다. Larger&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;-the-better 설계목표 기능변수의 S/N비는 &lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;각 기능변수 역수의 합의 제곱과 각 기능변수 역수 사이의 편차의 제곱의 합으로 다음과 같이 정의한다.&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;div id=&quot;code_1756092139697&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
SN = -10~\mathrm{log}_{10}\left|\frac{\left(1/y_{N_1}\right)^2 + \left(1/y_{N_2}\right)^2 + \cdots + \left(1/y_{N_m}\right)^2}{m}\right|~~~~[\mathrm{dB}]
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} SN = -10~\mathrm{log}_{10}\left|\frac{\left(1/y_{N_1}\right)^2 + \left(1/y_{N_2}\right)^2 + \cdots + \left(1/y_{N_m}\right)^2}{m}\right|~~~~[\mathrm{dB}] \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2.3. Nominal-the-best&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;b&gt;특정 목표값을 유지하게 하려는 설계목표&lt;/b&gt;로, 기능값이 목표값보다 커졌다 작아졌다를 반복하더라도 목표값과 유사한 상태를 유지하는 것을 목표로 한다. 목표값에서 실제값을 뺀 오차를 0을 목표로 유지하고자 하는 상황에 많이 선택한다. 이때 smaller-the-better는 항상 양의 값을 가져야하지만, &lt;b&gt;nominal-the-best는 음의 값 또한 가질 수 있다는 것에 유의&lt;/b&gt;한다. 시스템 구성품의 형상치수, 온도, 압력, 전압 등이 해당 설계목표가 될 수 있다. Nominal&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;-the-best 설계목표 기능변수의 S/N비는 목표값에서 설계목표 기능변수 y&lt;sub&gt;N&lt;sub&gt;n&lt;/sub&gt;&lt;/sub&gt;를 뺀 오차 e&lt;sub&gt;n&lt;/sub&gt;을 정의하여 다음과 같이 정의한다.&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;div id=&quot;code_1756092151992&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
&amp;amp;SN = -10~\mathrm{log}_{10}\left[\frac{\left(e_1^2+e_2^2 + ... + e_m^2\right)-S}{m-1}\right]~~~~[\mathrm{dB}] \\\\
&amp;amp;where~~~~S = \frac{\left(e_1+e_2+ ... + e_m\right)^2}{m} 
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} &amp;amp;SN = -10~\mathrm{log}_{10}\left[\frac{\left(e_1^2+e_2^2 + ... + e_m^2\right)-S}{m-1}\right]~~~~[\mathrm{dB}] \\\\ &amp;amp;where~~~~S = \frac{\left(e_1+e_2+ ... + e_m\right)^2}{m} \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3. 설계변수와 사용환경&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Engineering Design.png&quot; data-origin-width=&quot;3805&quot; data-origin-height=&quot;1521&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bA9mmQ/btsPj9mEltI/2aqV8NGsIeqS8NsgTk9S70/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bA9mmQ/btsPj9mEltI/2aqV8NGsIeqS8NsgTk9S70/img.png&quot; data-alt=&quot;설계변수와 사용환경&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bA9mmQ/btsPj9mEltI/2aqV8NGsIeqS8NsgTk9S70/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbA9mmQ%2FbtsPj9mEltI%2F2aqV8NGsIeqS8NsgTk9S70%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;663&quot; height=&quot;265&quot; data-filename=&quot;Engineering Design.png&quot; data-origin-width=&quot;3805&quot; data-origin-height=&quot;1521&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;설계변수와 사용환경&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;앞서 설계목표 기능변수를 선정했다면 해당 변수에 영향을 미치는 요인들을 빠짐없이 나열한다. 이때 기능변수에 조금이라도 영향을 미칠 것으로 예상하는 요인은 제외하지 않고 남겨둔다. 추후 민감도 분석을 통해 해당 요인이 기능변수에 얼마나 영향을 미치는지 알 수 있다. &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;그리고 해당 &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;요인들을 설계변수와 사용환경으로 구분한다. 시스템에서 &lt;b&gt;설계 구성원이 직접 조정 가능한 요인은 설계변수&lt;/b&gt;로, &lt;b&gt;사용자가 추후 조정할 요인이거나 설계 구성원이 직접 조정하기에는 너무 많은 비용이 드는 요인은 사용환경&lt;/b&gt;으로 취급한다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;[함께 읽으면 좋은 페이지]&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1766056681424&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;공학설계 | 견실최적설계(2): 제1차 실험 설계 및 수행&quot; data-og-description=&quot;1. 공학설계 2. 제품기획 2.1. 요구사항목록 3. 개념설계 3.1. 설계문제와 기능구조도 3.2. 동작원리와 설계대안 4. 기본설계 4.1. 시제품 레이아웃과 공학해석 4.2. 견실최적설계 4.2.1. 문제 정의 4.2.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/410&quot; data-og-url=&quot;https://vedacube.tistory.com/410&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/dcbpeB/hyZONN1efl/MlnZkLzGE9kfpjmXfx2UK1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/b317Jj/hyZP48cCoW/kww0lV4BQKGRRuQ0eZ1UnK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/eyycM/hyZP0dEw7Q/CR70mwYihysZ4NeAe5c8Xk/img.png?width=3525&amp;amp;height=2485&amp;amp;face=0_0_3525_2485&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/410&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/410&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/dcbpeB/hyZONN1efl/MlnZkLzGE9kfpjmXfx2UK1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/b317Jj/hyZP48cCoW/kww0lV4BQKGRRuQ0eZ1UnK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/eyycM/hyZP0dEw7Q/CR70mwYihysZ4NeAe5c8Xk/img.png?width=3525&amp;amp;height=2485&amp;amp;face=0_0_3525_2485');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;공학설계 | 견실최적설계(2): 제1차 실험 설계 및 수행&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 공학설계 2. 제품기획 2.1. 요구사항목록 3. 개념설계 3.1. 설계문제와 기능구조도 3.2. 동작원리와 설계대안 4. 기본설계 4.1. 시제품 레이아웃과 공학해석 4.2. 견실최적설계 4.2.1. 문제 정의 4.2.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1756038097856&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 설계문제 정식화&quot; data-og-description=&quot;1. 설계문제 정식화 설계를 최적화하기 위해서는 설계문제와 제한조건을 수학적으로 정의하여 정식화(formulation)할 필요가 있다. 이때 정식화가 얼마나 합리적인지에 따라 최적해의 좋고 나쁨이 &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/336&quot; data-og-url=&quot;https://vedacube.tistory.com/336&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bpKxvc/hyZC1EFjgq/WMMRv0ikAFpA6Z5RyTwfIk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cEnMzl/hyZDQCBPpX/QzHphLoOyeHDpLTesrpfQ1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/oLp3p/hyZC0Mwun9/6RLkSrvhe3uqmFcoyV12Pk/img.png?width=1692&amp;amp;height=1777&amp;amp;face=0_0_1692_1777&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/336&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/336&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bpKxvc/hyZC1EFjgq/WMMRv0ikAFpA6Z5RyTwfIk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cEnMzl/hyZDQCBPpX/QzHphLoOyeHDpLTesrpfQ1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/oLp3p/hyZC0Mwun9/6RLkSrvhe3uqmFcoyV12Pk/img.png?width=1692&amp;amp;height=1777&amp;amp;face=0_0_1692_1777');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 설계문제 정식화&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 설계문제 정식화 설계를 최적화하기 위해서는 설계문제와 제한조건을 수학적으로 정의하여 정식화(formulation)할 필요가 있다. 이때 정식화가 얼마나 합리적인지에 따라 최적해의 좋고 나쁨이&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;참고문헌&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;- 김종원. (2008). 공학설계: 창의적 신제품 개발방법론. 문운당.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;- Peace, G. S. (1993). Taguchi methods: a hands-on approach. &lt;span style=&quot;background-color: #ffffff; color: #0f1111; text-align: left;&quot;&gt;Addison-Wesley.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Engineering Design</category>
      <category>공학</category>
      <category>공학설계</category>
      <category>최적설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/409</guid>
      <comments>https://vedacube.tistory.com/409#entry409comment</comments>
      <pubDate>Fri, 7 Nov 2025 18:00:33 +0900</pubDate>
    </item>
    <item>
      <title>최적설계 | 제약조건 문제 수치해법(5): 제약최속강하법 CSD</title>
      <link>https://vedacube.tistory.com/321</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;1. 최적설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/336&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 설계문제 정식화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/352&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.2. 제약조건의 정규화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/338&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2. 최적성 조건&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/339&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/340&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2. 부등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/341&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3. KKT 최적성 조건&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/346&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 대안 형식과 이계 필요조건&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/317&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3. 선형계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/348&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 심플렉스법&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/354&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1.1. 인위변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/353&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. scipy.optimize.linprog&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/320&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4. 이차계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/103&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. qpsolvers.solve_qp&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 비제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/166&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 최속강하법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/109&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 공액경사법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/122&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 구간감소법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/123&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. 설계문제의 선형화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/130&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.2. 순차 선형계획법 SLP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/80&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.3. 순차 이차계획법 SQP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/396&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.4. 부정확 이동거리 탐색법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/321&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.5. 제약최속강하법 CSD ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 자연 영감 탐색법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/397&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 유전 알고리즘 GA&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/405&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1.1. pygad.GA&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/398&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. 미분 진화 알고리즘 DE&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/156&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2.1. scipy.optimize.differential_evolution&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 다목적 최적설계 문제&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/144&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 파레토 최적점&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/431&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 가중치 합 방법&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/213&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 비지배 정렬 유전 알고리즘 NSGA-II&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/212&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3.1. pymoo.alghrithms.moo.nsga2.NSGA2&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 제약최속강하법&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;앞서 다루었던 최속강하법에서 탐색방향은 목적함수가 가장 빠르게 감소하는 방향, 즉 목적함수의 경사도 벡터와 반대 방향이었다. 그러나 이전과 다르게 최적 설계문제에 제약조건이 추가되면 탐색방향은 목적함수가 감소하는 방향이면서도 선형화된 제약조건 또한 만족해야 한다. 이는 최속강하법에서 제약조건을 고려하여 탐색방향을 수정하기 때문에 이를&amp;nbsp;&lt;b&gt;제약최속강하법&lt;/b&gt;(Constrained Steepest Descent, CSD)이라고 부른다. 제약최속강하법의 풀이와 알고리즘은 순차 이차계획법과 동일하다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 알고리즘&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;7525&quot; data-origin-height=&quot;1437&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/oL6ir/btsOmW3uiUx/NJCHKf6rZFAaRBhm1XAVbk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/oL6ir/btsOmW3uiUx/NJCHKf6rZFAaRBhm1XAVbk/img.png&quot; data-alt=&quot;제약최속강하법 알고리즘&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/oL6ir/btsOmW3uiUx/NJCHKf6rZFAaRBhm1XAVbk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FoL6ir%2FbtsOmW3uiUx%2FNJCHKf6rZFAaRBhm1XAVbk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;839&quot; height=&quot;160&quot; data-origin-width=&quot;7525&quot; data-origin-height=&quot;1437&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;제약최속강하법 알고리즘&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;제약최속강하법을 시작하기에 앞서 종료 판정기준 두 가지를 정의한다. 첫 번째 기준은 &lt;b&gt;(1) 최대 제약조건 위배량에 대한 허용 오차&lt;/b&gt;로, 해당 설계점에서의 등호제약조건과 부등호제약조건 위배량 중 가장 큰 값이 해당 기준보다 작거나 같아야 한다. 두 번째 기준은 &lt;b&gt;(2) 탐색방향 벡터의 길이를 0으로 만들기 위한 것&lt;/b&gt;으로, 탐색방향 벡터의 길이가 해당 기준보다 작거나 같아야 한다. 반복 과정을 종료하기 위해서는 두 종료 판정기준 모두를 만족해야 한다.&amp;nbsp;이제 벌칙인자 초기값과 초기 설계점을 시작으로 종료 판정기준을 만족할 때까지 탐색을 반복한다. 현재 설계점에서 목적함수와 제약조건의 함수값과 경사도를 계산하고, 선형 테일러 급수 전개를 통해 문제를 국소적으로 선형화한다. 탐색방향 벡터에 대해 이차계획문제를 구성하여 풀이하여 탐색방향 벡터를 구하고, 제약조건의 함수값으로 최대 제약조건 위배량을 계산한다. 종료 판정기준을 만족하지 않는다면 라그랑지 승수의 합과 벌칙인자를 비교하여 벌칙인자의 값을 갱신하고, 부정확 이동거리 탐색법을 적용해 최대한 멀리 이동한다. 새로운 설계점을 갱신하고 종료 판정기준을 만족할 때가지 탐색을 반복한다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3. 예제&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;초기 설계점 (1, 1)에서 다음 설계문제를 최적화해보자.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748926445666&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{minimize}~~~~&amp;amp;f = x_1^2 + x_2^2 - 3x_1x_2 \\\\
\mathrm{subject~to}~~~~
&amp;amp;g_1 = \frac{1}{6}x_1^2 + \frac{1}{6}x_2^2 - 1 \leq 0 \\\\
&amp;amp;g_2 = -x_1 \leq 0 \\\\
&amp;amp;g_3 = -x_2 \leq 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{minimize}~~~~&amp;amp;f = x_1^2 + x_2^2 - 3x_1x_2 \\\\ \mathrm{subject~to}~~~~ &amp;amp;g_1 = \frac{1}{6}x_1^2 + \frac{1}{6}x_2^2 - 1 \leq 0 \\\\ &amp;amp;g_2 = -x_1 \leq 0 \\\\ &amp;amp;g_3 = -x_2 \leq 0 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;color: #333333; font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;탐색방향을 결정하기 위해 위 문제를 초기 설계점에서 선형화한 뒤 탐색방향의 길이를 최소화하기 위한 이차항을 더하면 다음과 같은 이차계획문제를 얻을 수 있다. 목적함수에서 상수는 최적해에 영향을 미치지 않으므로 생략하였다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748926588016&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{minimize}~~~~&amp;amp;\overline{f} = -d_1 -d_2 + 0.5\left(d_1^2+d_2^2\right) \\\\
\mathrm{subject~to}~~~~
&amp;amp;\overline{g}_1 = \frac{1}{3}d_1 + \frac{1}{3}d_2 - \frac{2}{3} \leq 0 \\\\
&amp;amp;\overline{g}_2 = -d_1-1 \leq 0 \\\\
&amp;amp;\overline{g}_3 = -d_2-1 \leq 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{minimize}~~~~&amp;amp;\overline{f} = -d_1 -d_2 + 0.5\left(d_1^2+d_2^2\right) \\\\ \mathrm{subject~to}~~~~ &amp;amp;\overline{g}_1 = \frac{1}{3}d_1 + \frac{1}{3}d_2 - \frac{2}{3} \leq 0 \\\\ &amp;amp;\overline{g}_2 = -d_1-1 \leq 0 \\\\ &amp;amp;\overline{g}_3 = -d_2-1 \leq 0 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;color: #333333; font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;위 이차계획문제를 행렬식으로 나타내면 다음과 같다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748926931790&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{minimize}~~~~&amp;amp;\overline{f} = \frac{1}{2} \mathbf{d}^T \mathbf{P} \mathbf{d} + \mathbf{q}^T \mathbf{d} \\\\
\mathrm{subject~to}~~~~
&amp;amp;\mathbf{G} \mathbf{d} \leq \mathbf{h}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{minimize}~~~~&amp;amp;\overline{f} = \frac{1}{2} \mathbf{d}^T \mathbf{P} \mathbf{d} + \mathbf{q}^T \mathbf{d} \\\\ \mathrm{subject~to}~~~~ &amp;amp;\mathbf{G} \mathbf{d} \leq \mathbf{h} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748926941711&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
&amp;amp;\mathbf{P} = 
\begin{bmatrix}
1 &amp;amp; 0 \\
0 &amp;amp; 1 \\
\end{bmatrix},~~~~
\mathbf{q} = 
\begin{bmatrix} 
-1 \\
-1 \\
\end{bmatrix}\\\\

&amp;amp;\mathbf{G} = 
\begin{bmatrix}
\frac{1}{3} &amp;amp; \frac{1}{3} \\
-1 &amp;amp; 0 \\
0 &amp;amp; -1 \\
\end{bmatrix},~~~~
\mathbf{h} =
\begin{bmatrix} 
\frac{2}{3} \\
1 \\
1 \\
\end{bmatrix}

\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} &amp;amp;\mathbf{P} = \begin{bmatrix} 1 &amp;amp; 0 \\ 0 &amp;amp; 1 \\ \end{bmatrix},~~~~ \mathbf{q} = \begin{bmatrix} -1 \\ -1 \\ \end{bmatrix}\\\\ &amp;amp;\mathbf{G} = \begin{bmatrix} \frac{1}{3} &amp;amp; \frac{1}{3} \\ -1 &amp;amp; 0 \\ 0 &amp;amp; -1 \\ \end{bmatrix},~~~~ \mathbf{h} = \begin{bmatrix} \frac{2}{3} \\ 1 \\ 1 \\ \end{bmatrix} \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;color: #333333; font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;위 이차계획문제에 qpsolvers.solve_qp 함수를 이용하면 아래와 같은 프로그램을 작성하여 풀이할 수 있으며, 그 결과는 다음과 같다. 해당 탐색방향 벡터는 알고리즘의 종료 판정조건을 만족하지 않는다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748927111612&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\therefore~\mathbf{d}^{\left(0\right)} = 
\begin{bmatrix}
1.0 \\
1.0 \\
\end{bmatrix}

\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \therefore~\mathbf{d}^{\left(0\right)} = \begin{bmatrix} 1.0 \\ 1.0 \\ \end{bmatrix} \end{align}$$&lt;/div&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;# 라이브러리 추가
import numpy as np
from qpsolvers import solve_qp

# 이차계획문제 가격계수 행렬 및 벡터 정의
P = np.array([[1.0, 0.0], [0.0, 1.0]])
q = np.array([-1.0, -1.0])

# 선형계획문제 부등호제약조건 행렬 정의
G = np.array([[1/3, 1/3], [-1.0, 0.0], [0.0, -1.0]])
h = np.array([2/3, 1.0, 1.0])

# 이차계획문제 최적화 알고리즘
x = solve_qp(P, q, G, h, solver=&quot;cvxopt&quot;)

# 이차계획문제 최적 결과 출력
print(x)&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;color: #333333; font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;현재 설계점에서 최대 제약조건 위배량 인자를 계산하면 다음과 같다. &lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;해당 최대 제약조건 위배량 인자는 알고리즘의 종료 판정조건을 만족한다.&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748934908696&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
V\left(\mathbf{x}^{\left(k\right)}\right) &amp;amp;= \mathrm{max}\left\{ 0;~~g_1\left(\mathbf{x}^{\left(k\right)}\right),g_2\left(\mathbf{x}^{\left(k\right)}\right),g_3\left(\mathbf{x}^{\left(k\right)}\right) \right\} \\\\
&amp;amp;= \mathrm{max}\left\{ 0;~~-\frac{2}{3}, -1, -1\right\} \\\\
&amp;amp;= 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} V\left(\mathbf{x}^{\left(k\right)}\right) &amp;amp;= \mathrm{max}\left\{ 0;~~g_1\left(\mathbf{x}^{\left(k\right)}\right),g_2\left(\mathbf{x}^{\left(k\right)}\right),g_3\left(\mathbf{x}^{\left(k\right)}\right) \right\} \\\\ &amp;amp;= \mathrm{max}\left\{ 0;~~-\frac{2}{3}, -1, -1\right\} \\\\ &amp;amp;= 0 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;벌칙인자를 갱신하기 위해 이차계획문제에 대하여 라그랑주 함수를 정의하고 KKT 최적성 조건을 적용하여 나타내면 다음과 같다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748927512721&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}

L~=~&amp;amp;\overline{f} + u_1\overline{g}_1 + u_2\overline{g}_2 + u_3\overline{g}_3 \\\\
=~&amp;amp;-d_1 -d_2 + 0.5\left(d_1^2 + d_2^2\right) \\\\
&amp;amp;+ u_1\left(\frac{1}{3}d_1 + \frac{1}{3}d_2 -\frac{2}{3}\right) \\\\
&amp;amp;+ u_2\left(-d_1 -1\right) \\\\
&amp;amp;+ u_3\left(-d_2 -1\right)

\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} L~=~&amp;amp;\overline{f} + u_1\overline{g}_1 + u_2\overline{g}_2 + u_3\overline{g}_3 \\\\ =~&amp;amp;-d_1 -d_2 + 0.5\left(d_1^2 + d_2^2\right) \\\\ &amp;amp;+ u_1\left(\frac{1}{3}d_1 + \frac{1}{3}d_2 -\frac{2}{3}\right) \\\\ &amp;amp;+ u_2\left(-d_1 -1\right) \\\\ &amp;amp;+ u_3\left(-d_2 -1\right) \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748927520858&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}

\frac{\partial L}{\partial d_1} &amp;amp;= -1 + d_1 + \frac{1}{3}u_1 -u_2 = 0 \\\\

\frac{\partial L}{\partial d_2} &amp;amp;= -1 + d_2 + \frac{1}{3}u_1 -u_3 = 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \frac{\partial L}{\partial d_1} &amp;amp;= -1 + d_1 + \frac{1}{3}u_1 -u_2 = 0 \\\\ \frac{\partial L}{\partial d_2} &amp;amp;= -1 + d_2 + \frac{1}{3}u_1 -u_3 = 0 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;color: #333333; font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;부등호제약조건에 탐색방향 벡터를 대입하였을 때 첫 번째 부등호제약조건은 활성, 두 번째와 세 번째 부등호제약조건은 만족이므로, 두 번째와 세 번째 부등호제약조건의 라그랑주 승수는 0의 값을 갖는다. KKT 최적성 조건에 이를 반영하고 탐색방향 벡터를 대입하면 첫 번째 부등호 제약조건의 라그랑주 승수는 다음과 같다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748927960607&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}

u_1=6

\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} u_1=6 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;이로부터 벌칙인자를 갱신하면 다음과 같다.&amp;nbsp;&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748934847688&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
R=\mathrm{max}\left( R_k,~r_k\right)=\mathrm{max}\left( 1,~6\right)=6
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} R=\mathrm{max}\left( R_k,~r_k\right)=\mathrm{max}\left( 1,~6\right)=6 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;부정확 이동거리 탐색법을 활용해 해당 단계에서 강하함수를 최소화하는 이동거리를 탐색한다. 이를 위해 현재 설계대안에서 강하함수를 계산하면 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748935216309&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\Phi \left( \mathbf{x}^{\left(k\right)} \right) &amp;amp;= f \left( \mathbf{x}^{\left(k\right)} \right) + RV \left( \mathbf{x}^{\left(k\right)} \right) \\\\
&amp;amp;= -1 + 6 \times 0 \\\\
&amp;amp;= -1
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \Phi \left( \mathbf{x}^{\left(k\right)} \right) &amp;amp;= f \left( \mathbf{x}^{\left(k\right)} \right) + RV \left( \mathbf{x}^{\left(k\right)} \right) \\\\ &amp;amp;= -1 + 6 \times 0 \\\\ &amp;amp;= -1 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;기본 시험 이동거리를&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt; 시작으로 이동거리 탐색을 실시한다. 현재 단계에서 주어진 탐색방향을 따라 시험하는 설계점은 다음과 같이 계산된다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748935451979&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathbf{x}^{\left(k+1,0\right)} &amp;amp;= \mathbf{x}^{\left(k\right)} + t_0 \mathbf{d}^{\left(k\right)} \\\\
&amp;amp;= 

\begin{bmatrix}
1 \\ 1
\end{bmatrix}

+ 1 \times

\begin{bmatrix}
1 \\ 1
\end{bmatrix} \\\\

&amp;amp;= 

\begin{bmatrix}
2 \\ 2
\end{bmatrix}

\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{x}^{\left(k+1,0\right)} &amp;amp;= \mathbf{x}^{\left(k\right)} + t_0 \mathbf{d}^{\left(k\right)} \\\\ &amp;amp;= \begin{bmatrix} 1 \\ 1 \end{bmatrix} + 1 \times \begin{bmatrix} 1 \\ 1 \end{bmatrix} \\\\ &amp;amp;= \begin{bmatrix} 2 \\ 2 \end{bmatrix} \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: start;&quot;&gt;&amp;nbsp; &amp;nbsp;강하조건을 만족하는지 확인하기 위해 시험 설계점에서 강하함수를 계산한다. 먼저 시험 설계점에서 최대 제약조건 위배량 인자를 계산하면 다음과 같다.&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748935465411&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
V\left(\mathbf{x}^{\left(k+1,0\right)}\right) &amp;amp;= \mathrm{max}\left\{ 0;~~g_1\left(\mathbf{x}^{\left(k+1,0\right)}\right),g_2\left(\mathbf{x}^{\left(k+1,0\right)}\right),g_3\left(\mathbf{x}^{\left(k+1,0\right)}\right) \right\} \\\\
&amp;amp;= \mathrm{max}\left\{ 0;~~\frac{1}{3},-2,-2\right\} \\\\
&amp;amp;= \frac{1}{3}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} V\left(\mathbf{x}^{\left(k+1,0\right)}\right) &amp;amp;= \mathrm{max}\left\{ 0;~~g_1\left(\mathbf{x}^{\left(k+1,0\right)}\right),g_2\left(\mathbf{x}^{\left(k+1,0\right)}\right),g_3\left(\mathbf{x}^{\left(k+1,0\right)}\right) \right\} \\\\ &amp;amp;= \mathrm{max}\left\{ 0;~~\frac{1}{3},-2,-2\right\} \\\\ &amp;amp;= \frac{1}{3} \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;위 연산을 기반으로 시험 설계점에 대해서 강하함수를 계산하면 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748935478203&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\Phi \left( \mathbf{x}^{\left(k+1,0\right)} \right) &amp;amp;= f \left( \mathbf{x}^{\left(k+1,0\right)} \right) + RV \left( \mathbf{x}^{\left(k+1,0\right)} \right) \\\\
&amp;amp;= -4 + 6 \times \frac{1}{3} \\\\
&amp;amp;= -2
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \Phi \left( \mathbf{x}^{\left(k+1,0\right)} \right) &amp;amp;= f \left( \mathbf{x}^{\left(k+1,0\right)} \right) + RV \left( \mathbf{x}^{\left(k+1,0\right)} \right) \\\\ &amp;amp;= -4 + 6 \times \frac{1}{3} \\\\ &amp;amp;= -2 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: start;&quot;&gt;&amp;nbsp; &amp;nbsp;시험 설계점에 대해서 강하조건을 검토한다. 시험 설계점에서의 강하함수를 초기 설계점에서의 강하함수와 비교하였을 때 그 값이 감소하였으므로, 즉 강하조건을 만족하므로 해당 시험 이동거리&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: start;&quot;&gt;는 수용 가능하다.&amp;nbsp;&lt;/span&gt; &lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748935490155&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathbf{\Phi} \left(\mathbf{x}^{\left(k+1,0\right)}\right) + t_0 \gamma \left\| \mathbf{d}^{\left(k\right)} \right\|^2 
&amp;amp;= -2 + 1 \times 0.5 \times \left( 1^2 + 1^2 \right) \\\\
&amp;amp;= -1 \\\\
&amp;amp;\leq \mathbf{\Phi} \left(\mathbf{x}^{\left(k\right)}\right) \\\\
&amp;amp;= -1
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{\Phi} \left(\mathbf{x}^{\left(k+1,0\right)}\right) + t_0 \gamma \left\| \mathbf{d}^{\left(k\right)} \right\|^2 &amp;amp;= -2 + 1 \times 0.5 \times \left( 1^2 + 1^2 \right) \\\\ &amp;amp;= -1 \\\\ &amp;amp;\leq \mathbf{\Phi} \left(\mathbf{x}^{\left(k\right)}\right) \\\\ &amp;amp;= -1 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: start;&quot;&gt;&amp;nbsp; &amp;nbsp;따라서 해당 단계에서의 이동거리는 다음과 같이 결정된다. 새로운 설계점 (2, 2)에서 탐색방향과 이동거리를 구하여 최적점을 구하기 위한 반복을 수행한다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748935507771&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\alpha_0 = t_0 = 1
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \alpha_0 = t_0 = 1 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;[함께 읽으면 좋은 페이지]&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1757336155065&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 파이썬 기반 이차계획문제 알고리즘 qpsolvers.solve_qp&quot; data-og-description=&quot;1. qpsolvers qpsolvers는 파이썬 기반의 오픈소스 패키지로, 이차계획문제 풀이를 위한 다양한 알고리즘을 제공한다. 파이썬 기반의 연산 패키지인 NumPy와도 호환이 가능해 복잡하게 형식을 정의할 &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/103&quot; data-og-url=&quot;https://vedacube.tistory.com/103&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/b6QI6B/hyZG9chGtx/zWK7nOYkPx42KE0M4kW09K/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/dUCz0Z/hyZIZl2tpu/Obgo2qDMhdgvmHfwliO5m0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/c4MyU6/hyZIUSzzzQ/2EHrQY2Ip2XP4bybOdI9C1/img.png?width=1821&amp;amp;height=1854&amp;amp;face=0_0_1821_1854&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/103&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/103&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/b6QI6B/hyZG9chGtx/zWK7nOYkPx42KE0M4kW09K/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/dUCz0Z/hyZIZl2tpu/Obgo2qDMhdgvmHfwliO5m0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/c4MyU6/hyZIUSzzzQ/2EHrQY2Ip2XP4bybOdI9C1/img.png?width=1821&amp;amp;height=1854&amp;amp;face=0_0_1821_1854');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 파이썬 기반 이차계획문제 알고리즘 qpsolvers.solve_qp&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. qpsolvers qpsolvers는 파이썬 기반의 오픈소스 패키지로, 이차계획문제 풀이를 위한 다양한 알고리즘을 제공한다. 파이썬 기반의 연산 패키지인 NumPy와도 호환이 가능해 복잡하게 형식을 정의할&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1755924725895&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 제약조건 문제 수치해법(3): 순차 이차계획법 SQP&quot; data-og-description=&quot;1. 순차 이차계획법 앞서 다룬 순차 선형계획법은 일반적인 제약조건 최적화 문제를 풀이를 위한 단순하고 직관적인 알고리즘이지만, 상황에 따라 정확한 최적해에 수렴하지 않는 등 강건성이 &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/80&quot; data-og-url=&quot;https://vedacube.tistory.com/80&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bWR54R/hyZzGBt7TQ/4aZLQUAdNt13443K1ZK5H1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/p6YmT/hyZDKCe8Y7/nfdeF4Uj5cyKE6CyL7bM70/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/80&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/80&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bWR54R/hyZzGBt7TQ/4aZLQUAdNt13443K1ZK5H1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/p6YmT/hyZDKCe8Y7/nfdeF4Uj5cyKE6CyL7bM70/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 제약조건 문제 수치해법(3): 순차 이차계획법 SQP&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 순차 이차계획법 앞서 다룬 순차 선형계획법은 일반적인 제약조건 최적화 문제를 풀이를 위한 단순하고 직관적인 알고리즘이지만, 상황에 따라 정확한 최적해에 수렴하지 않는 등 강건성이&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1758892150692&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 제약조건 문제 수치해법(4): 부정확 이동거리 탐색법&quot; data-og-description=&quot;1. 부정확 이동거리 탐색법 앞서 다룬 황금분할 탐색법은 구간감소법 중에서는 좋은 성능을 보이지만, 여전히 많은 함수값 계산을 요구하기 때문에 실제 공학 응용문제에서는 비효율적이다. 따&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/396&quot; data-og-url=&quot;https://vedacube.tistory.com/396&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bf3gwB/hyZKewjwSU/bDoBHldAr6KIyU1AOPKPb1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/NzzU8/hyZJZtaw4E/KgqQpW7BRVJLa0X3efMl70/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/396&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/396&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bf3gwB/hyZKewjwSU/bDoBHldAr6KIyU1AOPKPb1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/NzzU8/hyZJZtaw4E/KgqQpW7BRVJLa0X3efMl70/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 제약조건 문제 수치해법(4): 부정확 이동거리 탐색법&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 부정확 이동거리 탐색법 앞서 다룬 황금분할 탐색법은 구간감소법 중에서는 좋은 성능을 보이지만, 여전히 많은 함수값 계산을 요구하기 때문에 실제 공학 응용문제에서는 비효율적이다. 따&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;-&amp;nbsp;&lt;span style=&quot;color: #222222;&quot;&gt;Arora, J. S. (2016).&amp;nbsp;&lt;/span&gt;&lt;i&gt;Introduction to optimum design&lt;/i&gt;&lt;span style=&quot;color: #222222;&quot;&gt;. Elsevier.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Optimum Design</category>
      <category>공학</category>
      <category>최적설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/321</guid>
      <comments>https://vedacube.tistory.com/321#entry321comment</comments>
      <pubDate>Fri, 31 Oct 2025 18:00:05 +0900</pubDate>
    </item>
    <item>
      <title>파이썬 | 객체 지향 프로그래밍(2): 속성과 메소드</title>
      <link>https://vedacube.tistory.com/350</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/358&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 파이썬&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/347&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 기본 기능과 규칙&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 변수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.1. 기본자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/356&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1.1. 정수형, 실수형, 논리형, 문자열&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.2. 복합자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/149&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.1. 리스트, 튜플&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/355&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.2. 딕셔너리, 세트&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.3. 자료형 메소드&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/359&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 리스트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/361&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.2. 딕셔너리 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/362&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.3. 세트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/349&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.4. 객체 복사&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 조건문과 반복문&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/328&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. if-elif-else, while, for&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/234&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. range, enumerate, zip&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/165&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.3. break, continue&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 예외 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/295&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. try-except&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 사용자 정의 함수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/145&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. def-return&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/137&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 매개변수와 전달인자&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/323&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 지역변수와 전역변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 모듈, 패키지, 라이브러리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/322&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. impoart-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 파일 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/151&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 메모장 파일 쓰고 읽기&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/402&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. with-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 객체 지향 프로그래밍&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/152&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 클래스와 인스턴스&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/350&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 속성과 메소드 ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/161&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 클래스 상속&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;1. 속성&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;속성&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;(attribute)&lt;/span&gt;은 클래스와 인스턴스의 상태를 나타내는 변수로,&amp;nbsp;&lt;/span&gt;&lt;b&gt;클래스를 통해 생성될 인스턴스가 공통적으로 가질 상태값의 종류&lt;/b&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;를 정의한다. 속성이 통용되는 범위에 따라 ▲클래스 속성과&amp;nbsp;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;▲&lt;/span&gt;인스턴스 속성으로 나눌 수 있다.&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1.1. 클래스 속성&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;1939&quot; data-origin-height=&quot;1673&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/sSwkL/btsOlgUYn2g/8337VeI0QWHZkJGKECBJ4k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/sSwkL/btsOlgUYn2g/8337VeI0QWHZkJGKECBJ4k/img.png&quot; data-alt=&quot;클래스 속성&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/sSwkL/btsOlgUYn2g/8337VeI0QWHZkJGKECBJ4k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FsSwkL%2FbtsOlgUYn2g%2F8337VeI0QWHZkJGKECBJ4k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;341&quot; height=&quot;294&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;1939&quot; data-origin-height=&quot;1673&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;클래스 속성&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;b&gt;&amp;nbsp; &amp;nbsp;클래스 속성&lt;/b&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;은 해당 클래스에 속한 모든 인스턴스가 공유하는 속성으로,&amp;nbsp; &lt;/span&gt;&lt;b&gt;클래스 내에서 변수에 값을 할당하는 것으로 정의&lt;/b&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;할 수 있다. 아래 예시처럼 클래스 혹은 클래스를 통해 생성한 인스턴스의 이름과 점 연산자, 그리고 클래스 속성의 이름을 호출하는 것으로 해당 속성값을 불러올 수 있다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1748763808541&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;class apprentice:
    race = 'human'		# 클래스 속성 정의

avatar1 = apprentice()
avatar2 = apprentice()
avatar3 = apprentice()

print(apprentice.race)		# 클래스 속성 호출

print(avatar1.race)		# 인스턴스를 통해 클래스 속성 호출
print(avatar2.race)
print(avatar3.race)

apprentice.race = 'elf'		# 클래스 속성 변경
print(apprentice.race)

print(avatar1.race)
print(avatar2.race)
print(avatar3.race)&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;클래스를 정의할 때 클래스 속성과 그 값을 이미 정의했더라도 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;클래스를 정의하는 함수 밖에서&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;&lt;b&gt;클래스 속성을 호출하여 그 값을 변경하는 것이 가능&lt;/b&gt;하다. &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;이때 클래스 속성값이 변경된다면 이는 모든 인스턴스에 동일하게 적용된다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1770686132911&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;class apprentice:
    race = 'human'		# 클래스 속성 정의

apprentice.race = 'elf'		# 클래스 속성 변경
print(apprentice.race)

print(avatar1.race)
print(avatar2.race)
print(avatar3.race)&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;클래스 속성을 사전에 정의하지 않았더라도 아래 예시처럼 &lt;b&gt;클래스를 정의하는 함수 밖에서 새롭게 추가하는 것도 가능&lt;/b&gt;하다. 새롭게 추가한 &lt;b&gt;클래스 속성은 해당 클래스를 통해 생성한 인스턴스에 일괄적으로 반영&lt;/b&gt;된다. 이처럼 클래스 속성으로 정의한 특징은 모든 인스턴스가 공유하기 때문에, 모든 인스턴스에 공통적으로 적용할 특징은 클래스 속성으로 만들어 관리하는 것이 편리하다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1770686042591&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;class apprentice:
    race = 'human'		# 클래스 속성 정의

apprentice.rank = 1		# 클래스 속성 추가
print(apprentice.rank)

print(avatar1.rank)
print(avatar2.rank)
print(avatar3.rank)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1.2. 인스턴스 속성&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;1768&quot; data-origin-height=&quot;1671&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/n9R9e/dJMcabiPDUc/Aw5KWiG1cBralrgbksQJH1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/n9R9e/dJMcabiPDUc/Aw5KWiG1cBralrgbksQJH1/img.png&quot; data-alt=&quot;인스턴스 속성&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/n9R9e/dJMcabiPDUc/Aw5KWiG1cBralrgbksQJH1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fn9R9e%2FdJMcabiPDUc%2FAw5KWiG1cBralrgbksQJH1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;312&quot; height=&quot;295&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;1768&quot; data-origin-height=&quot;1671&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;인스턴스 속성&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;b&gt;&amp;nbsp; &amp;nbsp;인스턴스 속성&lt;/b&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;은 각 인스턴스가 고유하게 가진 속성으로, 특정 인스턴스의 인스턴스 속성값을 변경하더라도 다른 인스턴스에 영향을 주지 않는다.&amp;nbsp;&lt;/span&gt;&lt;b&gt;초기화 메소드 내에서 변수에 값을 할당하는 것으로 정의&lt;/b&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;할 수 있다. 초기화 메소드는 def 명령문 뒤에 __init__(self)를 작성하여 정의할 수 있으며, 쌍점 아래로 인스턴스 속성을 정의한다. 인스턴스 속성를 정의할 때는 해당 인스턴스를 지칭하는 self와 점 연산자,&amp;nbsp; 그리고 인스턴스 속성의 이름을 작성하여 값을 할당한다. 이때 &lt;/span&gt;&lt;b&gt;인스턴스 속성의 이름 앞에는 밑줄 한 개(_)를 붙이는 것을 원칙&lt;/b&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;으로 한다. 이는 인스턴스 속성은 비공개 변수로서, 클래스 속성처럼 외부에서 직접 접근하지 말라는 의미를 나타낸다.&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1748763833109&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;class apprentice:
    race = 'human'				# 클래스 속성 정의
    rank = 1
    def __init__(self):     			# 초기화 메소드 정의
        self._HP, self._MP = 50, 50		# 인스턴스 속성 정의
        self._STR, self._DEX, self._INT, self._LUK = 5, 5, 5, 5&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt; &amp;nbsp; &amp;nbsp;앞서 클래스 속성에 접근하여 값을 수정하는 것과 다르게, 인스턴스를 통해 접근하여 클래스 속성을 수정하면 인스턴스 속성으로 바뀌어 추가된다. 이후에 아래 예시처럼 클래스 속성에 직접 접근하여 값을 수정하더라도 해당 인스턴스의 클래스 속성은 인스턴스 속성으로 바뀐 상태이므로 클래스로부터 영향을 받지 않는다. 이처럼 인스턴스 속성으로 정의한 특징은 다른 인스턴스들과는 공유하지 않기 때문에, 각 인스턴스마다 다르게 관리할 특징은 인스턴스 속성으로 만드는 것이 편리하다. &lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1748763852350&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;class apprentice:
    race = 'human'				
    rank = 1
    def __init__(self):     		
        self._HP, self._MP = 50, 50
        self._STR, self._DEX, self._INT, self._LUK = 5, 5, 5, 5
        
avatar1 = apprentice()
avatar2 = apprentice()
avatar3 = apprentice()

avatar3.race = 'dwarf'		# 인스턴스를 통해 클래스 속성 변경
apprentice.race = 'elf'		# 클래스 속성 변경

print(apprentice.race)
print(avatar1.race)
print(avatar2.race)
print(avatar3.race)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2. 메소드&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;메소드(method)는 인스턴스의 행동&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;(behavior)을 정의하기 위해 클래스 내부에 구현된 함수이다. &lt;b&gt;인스턴스가 생성될 때 인스턴스 속성을 초기화&lt;/b&gt;하거나,&amp;nbsp; &lt;b&gt;객체의 인스턴스 속성에 접근&lt;/b&gt;하거나,&amp;nbsp;&lt;b&gt;다른 인스턴스들과 상호작용&lt;/b&gt;하기 위해 사용한다. 메소드의 용도에 따라 ▲초기화 메소드, &lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;▲&lt;/span&gt;상태 메소드, &lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;▲&lt;/span&gt;행동 메소드로 구분할 수 있다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2.1. 초기화 메소드&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;2997&quot; data-origin-height=&quot;1513&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/baiFjw/dJMcacPy3gL/XKgFD6r8Nd4rKjB9sDZ6TK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/baiFjw/dJMcacPy3gL/XKgFD6r8Nd4rKjB9sDZ6TK/img.png&quot; data-alt=&quot;초기화 메소드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/baiFjw/dJMcacPy3gL/XKgFD6r8Nd4rKjB9sDZ6TK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbaiFjw%2FdJMcacPy3gL%2FXKgFD6r8Nd4rKjB9sDZ6TK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;585&quot; height=&quot;295&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;2997&quot; data-origin-height=&quot;1513&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;초기화 메소드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;인스턴스가 생성될 때 인스턴스 속성을 초기화하기 위한 메소드로, 인스턴스 생성 시 자동으로 실행된다. &lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&lt;b&gt;def 명령문 뒤에 __init__(self)를 작성하는 것으로 정의&lt;/b&gt;할 수 있으며, 쌍점 아래로 인스턴스 속성을 정의한다. 인스턴스를 생성할 때 객체에 전달인자를 할당하여 &lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;인스턴스 속성에 저장하고 싶다면 아래 예시와 같이 초기화 메소드의 self 매개변수 뒤로 새로운 &lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;매개변수를 할당한다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1748764880381&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;class apprentice:
    race = 'human'				
    rank = 1
    # 초기화 메소드
    def __init__(self, nickname):	# 매개변수 할당
        self._HP, self._MP = 50, 50
        self._STR, self._DEX, self._INT, self._LUK = 5, 5, 5, 5
        self._nickname = nickname	# 인스턴스 속성에 매개변수 전달
        
avatar1 = apprentice('Steve')
avatar2 = apprentice('Tony')
avatar3 = apprentice('Clint')&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2.2. 상태 메소드&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;2584&quot; data-origin-height=&quot;1626&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/0frQ7/dJMcacINWB4/Oot1x0a3Jt6BXOdbvB9Ww1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/0frQ7/dJMcacINWB4/Oot1x0a3Jt6BXOdbvB9Ww1/img.png&quot; data-alt=&quot;상태 메소드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/0frQ7/dJMcacINWB4/Oot1x0a3Jt6BXOdbvB9Ww1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F0frQ7%2FdJMcacINWB4%2FOot1x0a3Jt6BXOdbvB9Ww1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;485&quot; height=&quot;305&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;2584&quot; data-origin-height=&quot;1626&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;상태 메소드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;인스턴스 속성에 접근하여 해당 값을 출력하거나 수정하기 위한 메소드로,&lt;b&gt; def 명령문 뒤에 메소드 이름을 작성하고 괄호 안에 self를 첫 번째 매개변수로 입력하여 정의&lt;/b&gt;할 수 있다. 앞서 언급한 것처럼 사용자가 인스턴스 속성에 직접 접근하는 것은 권장하지 않는다. 대신에 아래 예시처럼 인스턴스 속성에 접근하는 메소드를 정의하고 이를 호출하는 방식을 권장한다. 인스턴스 이름과 점 연산자를 입력하고 호출하고자 하는 상태 메소드의 이름을 입력한 뒤 괄호 안에 적절한 전달인자를 입력하는 것으로 상태 메소드를 호출할 수 있다. 이때 self 매개변수는 자동으로 해당 인스턴스를 할당하므로, 메소드를 호출할 때 전달인자로 입력하지 않아도 된다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1748765861133&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;class apprentice:
    race = 'human'				
    rank = 1
    def __init__(self, nickname):
        self._HP, self._MP = 50, 50
        self._STR, self._DEX, self._INT, self._LUK = 5, 5, 5, 5
        self._nickname = nickname
    # 상태 메소드
    def nickname(self):
        print(f'nickname: {self._nickname}')
    def status(self):
        print(f'HP: {self._HP} | MP: {self._MP}')
    def stat(self):
        print(f'STR: {self._STR} | DEX: {self._DEX} | INT: {self._INT} | LUK: {self._LUK}')
    def workup(self):
        self._STR += 1
    def meditation(self):
        self._MP += 1
        self._INT += 1
    def agility(self):
        self._DEX += 1
    def focus(self):
        self._LUK += 1

avatar1 = apprentice('Steve')
avatar2 = apprentice('Tony')
avatar3 = apprentice('Clint')

avatar1.workup()	# 상태 메소드 호출
avatar2.meditation()
avatar3.focus()

avatar1.stat()
avatar2.status()
avatar3.nickname()&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;4.3. 행동 메소드&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;4025&quot; data-origin-height=&quot;1644&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bg2ktT/dJMcaf6zVnz/NhJn4sSSsuWTFaMlaD2Ae1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bg2ktT/dJMcaf6zVnz/NhJn4sSSsuWTFaMlaD2Ae1/img.png&quot; data-alt=&quot;행동 메소드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bg2ktT/dJMcaf6zVnz/NhJn4sSSsuWTFaMlaD2Ae1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbg2ktT%2FdJMcaf6zVnz%2FNhJn4sSSsuWTFaMlaD2Ae1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;723&quot; height=&quot;295&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;4025&quot; data-origin-height=&quot;1644&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;행동 메소드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;다른 인스턴스와 상호작용하기 위한 메소드로, 상태 메소드와 기능 차이는 없으나 다른 인스턴스와 상호작용하는 용도로써 구분한다. def 명령문 뒤에 메소드 이름을 작성하고 괄호 안에 self를 첫 번째 매개변수로 입력하여 정의한다. &lt;b&gt;추가 매개변수로는 상호작용할 인스턴스를 할당&lt;/b&gt;한다. 아래 예시와 같이 다른 인스턴스의 이름을 전달인자로 입력하여 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;행동 메소드를 호출하였을 때, 다른 인스턴스의 행동 메소드를 호출하는 것으로&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;해당 인스턴스의 속성을 수정하는&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;등의 상호작용을 구현할 수 있다. &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;이때 다른 인스턴스의 속성에 직접 접근하여 값을 수정할 수도 있지만, 그보다는 속성 메소드를 호출하여 해당 인스턴스가 직접 본인의 속성값을 수정하도록 하는 것을 권장한다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1748765975916&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;class apprentice:
    race = 'human'				
    rank = 1
    def __init__(self, nickname):
        self._HP, self._MP = 50, 50
        self._STR, self._DEX, self._INT, self._LUK = 5, 5, 5, 5
        self._nickname = nickname
    def nickname(self):
        print(f'nickname: {self._nickname}')
    def status(self):
        print(f'HP: {self._HP} | MP: {self._MP}')
    def stat(self):
        print(f'STR: {self._STR} | DEX: {self._DEX} | INT: {self._INT} | LUK: {self._LUK}')
    def damaged(self, damage):	# 상호작용을 위한 속성 메소드
        self._HP -= damage
        if self._HP &amp;lt;= 0:        
            self._HP = 0
            print(f'{self._nickname}이(가) 사망했습니다.')    
    # 행동 메소드
    def punch(self, avatar):
        damage = self._STR + 0.5 * self._DEX
        avatar.damaged(damage)
    def magicarrow(self, avatar):
        damage = self._INT + self._LUK
        avatar.damaged(damage)
        self._MP -= 10

avatar1 = apprentice('Steve')
avatar2 = apprentice('Tony')

avatar1.punch(avatar2)		# 행동 메소드 호출
avatar2.magicarrow(avatar1)

avatar1.status()
avatar2.status()&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1770984761046&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;파이썬 | 객체 지향 프로그래밍(3): 클래스 상속&quot; data-og-description=&quot;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/161&quot; data-og-url=&quot;https://vedacube.tistory.com/161&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/CyC8T/dJMb87f2y5v/IjCRYfMqUsJsXgdMkqPWPk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/wm5MK/dJMb81GTmkJ/ipYmspsbNnVfrUskwyue4k/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/SM6Ik/dJMb9lk3kyC/zL92YrsQvVkEk4fWHY2RL1/img.png?width=3228&amp;amp;height=3251&amp;amp;face=0_0_3228_3251&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/161&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/161&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/CyC8T/dJMb87f2y5v/IjCRYfMqUsJsXgdMkqPWPk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/wm5MK/dJMb81GTmkJ/ipYmspsbNnVfrUskwyue4k/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/SM6Ik/dJMb9lk3kyC/zL92YrsQvVkEk4fWHY2RL1/img.png?width=3228&amp;amp;height=3251&amp;amp;face=0_0_3228_3251');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;파이썬 | 객체 지향 프로그래밍(3): 클래스 상속&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;- 박진수. (2019). 바로 쓰는 파이썬. 서울대학교출판문화원.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Programming/Python</category>
      <category>파이썬</category>
      <category>프로그래밍</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/350</guid>
      <comments>https://vedacube.tistory.com/350#entry350comment</comments>
      <pubDate>Fri, 24 Oct 2025 18:00:52 +0900</pubDate>
    </item>
    <item>
      <title>파이썬 | 객체 지향 프로그래밍(1): 클래스와 인스턴스</title>
      <link>https://vedacube.tistory.com/152</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/358&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 파이썬&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/347&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 기본 기능과 규칙&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 변수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.1. 기본자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/356&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1.1. 정수형, 실수형, 논리형, 문자열&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.2. 복합자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/149&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.1. 리스트, 튜플&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/355&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.2. 딕셔너리, 세트&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.3. 자료형 메소드&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/359&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 리스트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/361&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.2. 딕셔너리 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/362&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.3. 세트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/349&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.4. 객체 복사&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 조건문과 반복문&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/328&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. if-elif-else, while, for&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/234&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. range, enumerate, zip&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/165&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.3. break, continue&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 예외 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/295&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. try-except&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 사용자 정의 함수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/145&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. def-return&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/137&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 매개변수와 전달인자&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/323&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 지역변수와 전역변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 모듈, 패키지, 라이브러리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/322&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. impoart-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 파일 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/151&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 메모장 파일 쓰고 읽기&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/402&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. with-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 객체 지향 프로그래밍&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/152&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 클래스와 인스턴스 ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/350&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 속성과 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/161&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 클래스 상속&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 객체 지향 프로그래밍&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;1658&quot; data-origin-height=&quot;1618&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bQ8zhY/btsOnffU3P0/U7KmDLBcTUltNclBfPHvIk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bQ8zhY/btsOnffU3P0/U7KmDLBcTUltNclBfPHvIk/img.png&quot; data-alt=&quot;객체 지향 프로그래밍&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bQ8zhY/btsOnffU3P0/U7KmDLBcTUltNclBfPHvIk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbQ8zhY%2FbtsOnffU3P0%2FU7KmDLBcTUltNclBfPHvIk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;272&quot; height=&quot;265&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;1658&quot; data-origin-height=&quot;1618&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;객체 지향 프로그래밍&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;객체 지향 프로그래밍(Object-Oriented Programming, OOP) 언어는 프로그램 설계 방법론 중 하나로, 프로그램을 단순하게 데이터와 명령문의 연속으로 보는 것이 아니라, &lt;b&gt;독립된 객체 단위가 데이터를 주고 받으며 서로 상호작용하는 관점&lt;/b&gt;으로 보는 것이 특징이다. &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;각 객체는 다른 객체와 구별되면서도 자신의 상태를 설명하는 ▲속성과, 다른 객체와 상호작용하기 위한 &lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;▲&lt;/span&gt;행동으로 정의되며, 클래스를 통해 객체를 생성하고 복제할 수 있다.된다. 파이썬은 객체 지향 프로그래밍을 지원하므로, 클래스를 통해 객체를 생성하고 복제할 수 있다.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 클래스와 인스턴스&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;3949&quot; data-origin-height=&quot;4047&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dJT1Do/btsOm8A9vzC/AYgkaqdCV9cJ9W17rOjsn1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dJT1Do/btsOm8A9vzC/AYgkaqdCV9cJ9W17rOjsn1/img.png&quot; data-alt=&quot;클래스와 인스턴스&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dJT1Do/btsOm8A9vzC/AYgkaqdCV9cJ9W17rOjsn1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdJT1Do%2FbtsOm8A9vzC%2FAYgkaqdCV9cJ9W17rOjsn1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;425&quot; height=&quot;436&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;3949&quot; data-origin-height=&quot;4047&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;클래스와 인스턴스&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;b&gt;클래스&lt;/b&gt;(class)는 같은 종류에 속하는 객체들의 속성과 행동을 정의하는 &lt;b&gt;사용자 정의 자료형&lt;/b&gt;이며, 클래스로부터 정의된 객체, 즉 &lt;b&gt;인스턴스&lt;/b&gt;(instance)는 자신만의 속성과 행동을 보유한다. 클래스를 정의하기 위해서는 아래 예시와 같이 class 명령문 뒤에 클래스 이름을 작성하고, 쌍점 아래로 해당 클래스의 &lt;b&gt;속성&lt;/b&gt;과 행동 또는 &lt;b&gt;메소드&lt;/b&gt;를 정의하는 명령문을 입력한다. 클래스의 속성과 메소드를 부여받을 인스턴스를 생성하기 위해 클래스를 호출하여 변수에 할당한다. 아래 예시에서 생성한 세 객체는 동일한 클래스를 통해 생성하였으므로 모두 같은 특징을 갖는다. 이처럼 &lt;b&gt;클래스를 정의하면 매번 새로운 객체를 정의할 필요 없이 동일한 특성을 갖는 객체를 반복적으로 생성&lt;/b&gt;할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;class apprentice:		# 클래스 정의
    # 속성
    race = 'human'
    rank = 1
    def __init__(self, nickname):
        self._HP, self._MP = 50, 50
        self._STR, self._DEX, self._INT, self._LUK = 5, 5, 5, 5
        self._nickname = nickname
    # 메소드
    def nickname(self):
        print(f'nickname: {self.__nickname}')
    def status(self):
        print(f'HP: {self._HP} | MP: {self._MP}')
    def stat(self):
        print(f'STR: {self._STR} | DEX: {self._DEX} | INT: {self._INT} | LUK: {self._LUK}')
    def damaged(self, damage):
        self._HP -= damage
        if self._HP &amp;lt;= 0:
            self._HP = 0
            print(f'{self._nickname}이(가) 사망했습니다.')
    def punch(self, avatar):
        damage = self._STR + 0.5 * self._DEX
        avatar.damaged(damage)
    def magicarrow(self, avatar):
        damage = self._INT + self._LUK
        avatar.damaged(damage)
        self._MP -= 10

avatar1 = apprentice('Steve')	# 인스턴스 생성
avatar2 = apprentice('Tony')
avatar3 = apprentice('Clint')&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1766060447409&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;파이썬 | 객체 지향 프로그래밍(2): 속성과 메소드&quot; data-og-description=&quot;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/350&quot; data-og-url=&quot;https://vedacube.tistory.com/350&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/dDm4g5/hyZPzPwvSJ/nSJndbAJ4gmj6fkuKyh9DK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cKORwq/hyZPIdgb90/iObO4w20daKFwso8JJlav0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bfIpeq/hyZPOYSxEI/NXpwEaJUI2IoCT34CiU200/img.png?width=3942&amp;amp;height=1644&amp;amp;face=0_0_3942_1644&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/350&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/350&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/dDm4g5/hyZPzPwvSJ/nSJndbAJ4gmj6fkuKyh9DK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cKORwq/hyZPIdgb90/iObO4w20daKFwso8JJlav0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bfIpeq/hyZPOYSxEI/NXpwEaJUI2IoCT34CiU200/img.png?width=3942&amp;amp;height=1644&amp;amp;face=0_0_3942_1644');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;파이썬 | 객체 지향 프로그래밍(2): 속성과 메소드&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;- 박진수. (2019). 바로 쓰는 파이썬. 서울대학교출판문화원.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Programming/Python</category>
      <category>파이썬</category>
      <category>프로그래밍</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/152</guid>
      <comments>https://vedacube.tistory.com/152#entry152comment</comments>
      <pubDate>Fri, 17 Oct 2025 18:00:57 +0900</pubDate>
    </item>
    <item>
      <title>공학설계 | 기본설계(2): 견실최적설계</title>
      <link>https://vedacube.tistory.com/404</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/386&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 공학설계&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 제품기획&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/390&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 요구사항목록&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 개념설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/391&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 설계문제와 기능구조도&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/325&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. 동작원리와 설계대안&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 기본설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/392&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. 시제품 레이아웃과 공학해석&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/404&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2. 견실최적설계 ★&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/409&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.1. 문제 정의&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/410&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.2. 제1차 실험 설계 및 수행&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/411&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.3. 민감도 분석&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 상세설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/393&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 제작도면과 자재소요서&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 견실최적설계&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1698&quot; data-origin-height=&quot;1615&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/yc1bk/btsOVvRJ4My/iuhNx1GVkJP9JKDcKMN6UK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/yc1bk/btsOVvRJ4My/iuhNx1GVkJP9JKDcKMN6UK/img.png&quot; data-alt=&quot;견실최적설계&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/yc1bk/btsOVvRJ4My/iuhNx1GVkJP9JKDcKMN6UK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fyc1bk%2FbtsOVvRJ4My%2FiuhNx1GVkJP9JKDcKMN6UK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;279&quot; height=&quot;265&quot; data-origin-width=&quot;1698&quot; data-origin-height=&quot;1615&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;견실최적설계&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;완성한 시제품 레이아웃을 기반으로 시제품을 제작하고 성능을 검증한다. 이때&lt;b&gt; 다양한 사용환경에서도 성능이 유지되도록 설계변수를 조정&lt;/b&gt;한다. 앞서 실패모드 설정 단계는 다양한 사용환경에서도 시제품이 요구 기능을 만족하도록 레이아웃을 보완하는 것이 목적이었지만, 현재 단계에서는 다양한 사용환경에서도 요구 기능이 가장 좋은 상태를 유지하도록 하는 것을 목표로 한다. 이를 위해 시제품을 대상으로 실험을 수행하여 설계변수 최적값을 찾는 과정을 &lt;b&gt;견실최적설계&lt;/b&gt;(robust optimal design)라고 부른다. 해당 방법론은 실험계획법(Design of Experiments, DOE) 또는 다구치 방법론(Taguchi methods)이라 불리기도 한다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 기능변동량&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;4241&quot; data-origin-height=&quot;1498&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bm5Kua/btsOUVDpo2q/OaEY4AGUcJ8FOlg5Ob2o31/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bm5Kua/btsOUVDpo2q/OaEY4AGUcJ8FOlg5Ob2o31/img.png&quot; data-alt=&quot;기능변동량과 유지보수비&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bm5Kua/btsOUVDpo2q/OaEY4AGUcJ8FOlg5Ob2o31/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbm5Kua%2FbtsOUVDpo2q%2FOaEY4AGUcJ8FOlg5Ob2o31%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;693&quot; height=&quot;245&quot; data-origin-width=&quot;4241&quot; data-origin-height=&quot;1498&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;기능변동량과 유지보수비&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;견실최적설계는 품질을 사용자 관점에서 정의한다. 시스템이 사용자에게 양도된 이후부터는 사용자가 시스템의 성능을 유지하기 위해 유지보수비용을 지불한다. 두 시스템이 생산 공장에서 출고될 당시에 동일한 성능을 보이더라도, 사용자 입장에서는 유지보수비용을 적게 지불하는 시스템의 품질이 더 좋다고 평가한다. 생산 공장에서 정의하는 품질은 출고 당시의 성능에 초점을 둔다면, &lt;b&gt;견실최적설계에서 정의하는 품질은 사용환경에 대한 기능변동량(functional variation)에 초점을 둔다. &lt;/b&gt;견실최적설계를 고안한 다구치 박사는 사용자가 지불하는 유지보수비용은 기능변동량의 제곱에 비례한다고 밝혔으며, 따라서 &lt;b&gt;사용자 입장에서 품질이 좋다는 평가를 받기 위해서는 시스템의 기능변동량이 작도록 설계해야 한다.&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;4201&quot; data-origin-height=&quot;1217&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/UUxey/btsOWokhcS5/JLNbg9SuxrEM0IKQCVxPrk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/UUxey/btsOWokhcS5/JLNbg9SuxrEM0IKQCVxPrk/img.png&quot; data-alt=&quot;스프링의 기능변동량&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/UUxey/btsOWokhcS5/JLNbg9SuxrEM0IKQCVxPrk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FUUxey%2FbtsOWokhcS5%2FJLNbg9SuxrEM0IKQCVxPrk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;743&quot; height=&quot;215&quot; data-origin-width=&quot;4201&quot; data-origin-height=&quot;1217&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;스프링의 기능변동량&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;견실최적설계에서 정의하는 품질 개념을 이해하기 위해 한 예시를 살펴보자. 한 회사는 스프링 납품업체를 선정하기 위해 제조사 A사와 B사로부터 각각 샘플 1,000개를 받았다. 품질관리부서는 두 회사의 스프링 품질을 시험하고 평가하여 업체를 결정하기로 하였다. 직관적인 방법을 따른다면 모집단에서 표본을 추출하고 스프링 상수를 측정한다. 도면에 명기된 공차 10% 이내에 해당하지 않는 스프링이 1,000개 중에서 몇 개인지 통계적으로 추정한다. 하지만 두 회사에서 모두 품질을 관리하여 출고하기 때문에 스프링 대부분이 공차 범위 내에 들어갈 것이다. 결국 품질관리부서는 두 회사 모두 동일한 품질을 공급하고 있다고 판단하고 더 저렴한 가격으로 납품하는 회사를 고를 것이다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div align=&quot;center&quot;&gt;
&lt;table style=&quot;border-collapse: collapse; width: 94.7675%; height: 229px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style4&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 38px; text-align: center;&quot; colspan=&quot;2&quot; rowspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;
&lt;td style=&quot;width: 37.5%; height: 21px; text-align: center;&quot; colspan=&quot;3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;A사&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 37.5%; height: 21px; text-align: center;&quot; colspan=&quot;3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;B사&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0 kgf&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1,000 kgf &lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2,000 kgf &lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0 kgf &lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1,000 kgf &lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;2,000 kgf &lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 12.5%; height: 34px; text-align: center;&quot; rowspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;사용환경&lt;br /&gt;N&lt;sub&gt;1&lt;/sub&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;측정값 (mm)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-0.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;9.3&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;18.9&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;-0.1&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;9.8&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;19.5&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;오차 (mm)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.1&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.1&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.2&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.5&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 12.5%; height: 34px; text-align: center;&quot; rowspan=&quot;2&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;사용환경&lt;br /&gt;N&lt;sub&gt;2&lt;/sub&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;측정값 (mm)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;10.9&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;21.3&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.3&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;10.3&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;20.5&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;오차 (mm)&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.7&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.9&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;1.3&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.3&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.3&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 12.5%; height: 17px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;0.5&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; 하지만 견실최적설계 관점에서 품질을 평가한다면 단순하게 요구 기능 달성 여부뿐만 아니라 기능변동량을 살펴보아야 한다. 즉, 스프링이 노출될 극한 환경에서도 기능변동량이 최소가 되는 스프링을 골라야 한다. 이를 위해 극한 환경인 영하 30도(사용환경 N&lt;sub&gt;1&lt;/sub&gt;)와 영상 70도(사용환경 N&lt;sub&gt;2&lt;/sub&gt;)를 재현할 수 있는 설비를 만들고, 해당 설비 내에서 표본으로 추출한 스프링에 10,000번의 인장과 압축을 반복하여 가한 뒤 스프링 상수를 측정한다. 견실최적설계에서 정의하는 품질 개념을 따르자면, 좋은 품질의 스프링이라면 극한 환경에서도 스프링 상수가 일정해야 한다. 위 측정 결과를 비교해보았을 때 B사의 스프링이 극한 환경에서 오차가 A사에 비해 더 작은 것을 확인할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3. 6-시그마&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2372&quot; data-origin-height=&quot;1488&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lMQej/btsOYar8U3h/jFZix8WhhUP68ifimL34nk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lMQej/btsOYar8U3h/jFZix8WhhUP68ifimL34nk/img.png&quot; data-alt=&quot;품질 관리 등급&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lMQej/btsOYar8U3h/jFZix8WhhUP68ifimL34nk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlMQej%2FbtsOYar8U3h%2FjFZix8WhhUP68ifimL34nk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;390&quot; height=&quot;245&quot; data-origin-width=&quot;2372&quot; data-origin-height=&quot;1488&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;품질 관리 등급&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;품질 관리를 위해 A사와 B사에서 생산한 스프링을 각자 전수검사하는 예시를 생각해보자. 두 업체 모두 목표 스프링 상수 m 기준으로 측정된 스프링 상수 k에 따라 스프링의 등급을 다음과 같이 매긴하고 가정하자. 스프링 상수가 해당 범위를 벗어나는 경우에는 불량품으로 판정한다. 각 업체에서 스프링 10,000개를 생산하여 등급을 매겼을 때 아래 그림과 같은 분포를 보였다고 가정하자. &lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;○&amp;nbsp; &lt;b&gt;A급&lt;/b&gt;:&amp;nbsp; m-1 &amp;le; k &amp;le; m+1&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;○&amp;nbsp; &lt;b&gt;B급&lt;/b&gt;:&amp;nbsp; m-2 &amp;le; k &amp;lt; m-1 또는 m+1 &amp;lt; k &amp;le; m+2&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;○&amp;nbsp; &lt;b&gt;C급&lt;/b&gt;:&amp;nbsp; m-3 &amp;le; k &amp;lt; m-2 또는 m+2 &amp;lt; k &amp;le; m+3&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;○&amp;nbsp; &lt;b&gt;D급&lt;/b&gt;:&amp;nbsp; m-4 &amp;le; k &amp;lt; m-3 또는 m+3 &amp;lt; k &amp;le; m+4&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;○&amp;nbsp; &lt;b&gt;E급&lt;/b&gt;: &amp;nbsp;m-5 &amp;le; k &amp;lt; m-4 또는 m+4 &amp;lt; k &amp;le; m+5&lt;/span&gt;&lt;/blockquote&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2396&quot; data-origin-height=&quot;1489&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/K1jWL/btsOXlHWnJe/ZjfgsxbnovkKPn6YDKLQK1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/K1jWL/btsOXlHWnJe/ZjfgsxbnovkKPn6YDKLQK1/img.png&quot; data-alt=&quot;A사와 B사의 스프링 품질 분포&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/K1jWL/btsOXlHWnJe/ZjfgsxbnovkKPn6YDKLQK1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FK1jWL%2FbtsOXlHWnJe%2FZjfgsxbnovkKPn6YDKLQK1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;394&quot; height=&quot;245&quot; data-origin-width=&quot;2396&quot; data-origin-height=&quot;1489&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;A사와 B사의 스프링 품질 분포&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp; 무결점(zero defect) 정책을 수행하는 A사는 출고 이전에 불량품으로 판별된 부품을 조정하거나 수리하여 합격 등급에 포함되도록 만든다. 따라서 품질 분포를 보았을 때 불량품의 수가 상대적으로 적다. 하지만 이러한 스프링은 출고 이후에 열악한 사용환경에서 불량 영역으로 다시 넘어갈 가능성이 높다. 반면에 B사의 경우 A사보다 불량품은 많지만 높은 등급의 스프링을 생산하고 있으므로 극한의 사용환경에서도 불량 영역으로 나갈 가능성이 적다. 제조사 입장에서는 A사처럼 품질을 관리하는 것이 좋겠으나, 결과적으로 사용자 입장에서는 B사에서 생산하는 스프링의 품질이 더 좋다고 평가된다. 결국 품질에서 중요한 것은 불량품이 얼마나 적은지가 아니라, 품질 등급이 어떤 분포를 하고 있는지가 중요하다. 이를 정량적으로 보여주는 지표가 표준편차이며, &lt;b&gt;품질 분포의&amp;nbsp;표준편차가 작을수록 품질이 좋다&lt;/b&gt;고 할 수 있다. &lt;b&gt;품질 목표값 m을 기준으로 치수공차를 &amp;plusmn;3&amp;sigma;로 설정하거나, 공차가 &lt;span style=&quot;color: #333333;&quot;&gt;&amp;plusmn;d일 때 표준편차는 d/3 이내가 되도록 관리하는 것을 &lt;/span&gt;&lt;/b&gt;&lt;b&gt;6-시그마 정책&lt;/b&gt;이라고 한다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1766056635233&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;공학설계 | 견실최적설계(1): 문제 정의&quot; data-og-description=&quot;1. 공학설계 2. 제품기획 2.1. 요구사항목록 3. 개념설계 3.1. 설계문제와 기능구조도 3.2. 동작원리와 설계대안 4. 기본설계 4.1. 시제품 레이아웃과 공학해석 4.2. 견실최적설계 4.2.1. 문제 정의 4.2.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/409&quot; data-og-url=&quot;https://vedacube.tistory.com/409&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cerZdV/hyZPoNZjGJ/UU0qsqj6awXu3bcCZATB6K/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bi1jyd/hyZOPZlKvr/LlDb5Tv764y6KnPWU6Lbm1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/SPPTp/hyZOKRk7Ch/kVS2Xw2tw73YgmyVsjBtPk/img.png?width=3805&amp;amp;height=1521&amp;amp;face=0_0_3805_1521&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/409&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/409&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cerZdV/hyZPoNZjGJ/UU0qsqj6awXu3bcCZATB6K/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bi1jyd/hyZOPZlKvr/LlDb5Tv764y6KnPWU6Lbm1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/SPPTp/hyZOKRk7Ch/kVS2Xw2tw73YgmyVsjBtPk/img.png?width=3805&amp;amp;height=1521&amp;amp;face=0_0_3805_1521');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;공학설계 | 견실최적설계(1): 문제 정의&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 공학설계 2. 제품기획 2.1. 요구사항목록 3. 개념설계 3.1. 설계문제와 기능구조도 3.2. 동작원리와 설계대안 4. 기본설계 4.1. 시제품 레이아웃과 공학해석 4.2. 견실최적설계 4.2.1. 문제 정의 4.2.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;color: #333333;&quot;&gt;- 김종원. (2008). 공학설계: 창의적 신제품 개발방법론. 문운당.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Engineering Design</category>
      <category>공학</category>
      <category>공학설계</category>
      <category>최적설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/404</guid>
      <comments>https://vedacube.tistory.com/404#entry404comment</comments>
      <pubDate>Fri, 10 Oct 2025 18:00:46 +0900</pubDate>
    </item>
    <item>
      <title>공학설계 | 기본설계(1): 시제품 레이아웃과 공학해석</title>
      <link>https://vedacube.tistory.com/392</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/386&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 공학설계&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 제품기획&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/390&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 요구사항목록&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 개념설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/391&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 설계문제와 기능구조도&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/325&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. 동작원리와 설계대안&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 기본설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/392&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. 시제품 레이아웃과 공학해석 ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/404&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2. 견실최적설계&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/409&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.1. 문제 정의&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/410&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.2. 제1차 실험 설계 및 수행&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/411&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.3. 민감도 분석&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 상세설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/393&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 제작도면과 자재소요서&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 기본설계&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3255&quot; data-origin-height=&quot;1678&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/XBbqz/btsOQQvbZMf/KVkSRzmCBfZLEvpnOkJKbK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/XBbqz/btsOQQvbZMf/KVkSRzmCBfZLEvpnOkJKbK/img.png&quot; data-alt=&quot;기본설계&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/XBbqz/btsOQQvbZMf/KVkSRzmCBfZLEvpnOkJKbK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FXBbqz%2FbtsOQQvbZMf%2FKVkSRzmCBfZLEvpnOkJKbK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;534&quot; height=&quot;275&quot; data-origin-width=&quot;3255&quot; data-origin-height=&quot;1678&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;기본설계&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;개념설계 단계에서 최적 설계대안을 선정했다면 기본설계로 들어간다. 기본설계는 &lt;b&gt;시제품 레이아웃을 작성하고 공학해석을 거쳐 성능을 검증&lt;/b&gt;한다. 이와 더불어 &lt;b&gt;실패 모드를 상정하여 레이아웃을 보완하고 시제품을 제작한 뒤 견실최적설계를 수행&lt;/b&gt;한다. 기본설계는 최적 설계대안을 기반으로 다음과 같은 절차를 거친다.&lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;color: #333333; font-family: 'Noto Sans Light';&quot;&gt;●&amp;nbsp; &lt;b&gt;시제품 레이아웃 작성&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #333333; font-family: 'Noto Sans Light';&quot;&gt;●&amp;nbsp; 시제품 레이아웃을 기반으로 &lt;b&gt;공학해석 검증&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #333333; font-family: 'Noto Sans Light';&quot;&gt;●&amp;nbsp; &lt;b&gt;실패모드 설정&lt;/b&gt; 후 시제품 레이아웃 보완&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #333333; font-family: 'Noto Sans Light';&quot;&gt;●&amp;nbsp; &lt;b&gt;시제품 제작&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #333333; font-family: 'Noto Sans Light';&quot;&gt;●&amp;nbsp; &lt;b&gt;견실최적설계 수행&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 시제품 레이아웃 작성&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;4349&quot; data-origin-height=&quot;2385&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bVSyvD/btsOTPH1xLh/IZKiR1bS9adVG9j9BWu4YK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bVSyvD/btsOTPH1xLh/IZKiR1bS9adVG9j9BWu4YK/img.png&quot; data-alt=&quot;시제품 레이아웃 작성&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bVSyvD/btsOTPH1xLh/IZKiR1bS9adVG9j9BWu4YK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbVSyvD%2FbtsOTPH1xLh%2FIZKiR1bS9adVG9j9BWu4YK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;610&quot; height=&quot;335&quot; data-origin-width=&quot;4349&quot; data-origin-height=&quot;2385&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;시제품 레이아웃 작성&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;최적 설계대안을 &lt;b&gt;시제품(prototype)으로 만들 수 있을 정도로 구체적인 레이아웃을 작성&lt;/b&gt;한다. 최적 설계대안을 기반으로 시스템의 구조를 생각하면서 시스템 프레임 초기 형상을 3D CAD로 나타낸다. 이 프레임에 구동부와 센서 등의 부속품을 하나씩 부착하면서 프레임의 형상과 크기를 조금씩 수정한다. &lt;span style=&quot;color: #333333;&quot;&gt;시스템 프레임에 부속품을 어떤 식으로 체결할지 조립 과정을 생각하면서 필요한 부속품을 추가한다. 이 과정에서 &lt;/span&gt;&lt;span style=&quot;color: #333333;&quot;&gt;각종 부품의 형상과 크기가 결정되어야 하며, 외부에서 구매해야 하는 부품이 있다면 구매처와 모델 또한 결정해야 한다. 이때 주요 기계요소마다 선정 시 고려해야 하는 사항들이 있는데, 이에 대해 자세하게 확인하고 싶다면 아래 링크를 참고하도록 하자.&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1771594095752&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;공학설계 | 기계요소(1): 평기어 선정 방법&quot; data-og-description=&quot;1. 평기어 구동기가 발생시키는 동력을 전달하는 가장 기본적인 기계요소로, 두 개의 평기어가 구동기 축과 평행하게 배치된 상태에서 한 평기어를 회전시키면 톱니가 서로 맞물려 회전하여 동&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/401&quot; data-og-url=&quot;https://vedacube.tistory.com/401&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bNkhmA/dJMb86nUcwA/Wap0QLiKGIXapHCCAlr61k/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/hTNRK/dJMb86OYuaz/MSI02CnLXWaNMlKGv2rIJ0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cEYDrA/dJMb83kpAUJ/RGLvKyHwIPoyWRCcnBuKjK/img.png?width=4060&amp;amp;height=2709&amp;amp;face=0_0_4060_2709&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/401&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/401&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bNkhmA/dJMb86nUcwA/Wap0QLiKGIXapHCCAlr61k/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/hTNRK/dJMb86OYuaz/MSI02CnLXWaNMlKGv2rIJ0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cEYDrA/dJMb83kpAUJ/RGLvKyHwIPoyWRCcnBuKjK/img.png?width=4060&amp;amp;height=2709&amp;amp;face=0_0_4060_2709');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;공학설계 | 기계요소(1): 평기어 선정 방법&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 평기어 구동기가 발생시키는 동력을 전달하는 가장 기본적인 기계요소로, 두 개의 평기어가 구동기 축과 평행하게 배치된 상태에서 한 평기어를 회전시키면 톱니가 서로 맞물려 회전하여 동&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1772195989931&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;공학설계 | 기계요소(2): 타이밍벨트 선정 방법(1) - 규격&quot; data-og-description=&quot;1. 타이밍벨트 구동기가 발생시키는 동력을 원거리에 위치한 기계부품에 전달하는 기계요소로, 두 개의 풀리가 구동기 축과 평행하게 배치된 상태에서 두 풀리에 타이밍벨트를 걸고 한 풀리를 &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/158&quot; data-og-url=&quot;https://vedacube.tistory.com/158&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/oPiAH/dJMb82eKlU5/yzJvDyeYuZ57lH5tf7A7Rk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/fx5pE/dJMb83kqeCB/VKKKlUOV2pHPE0zukrdyXK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/dds82H/dJMb88eXXcl/SkNmv8nBuXn20TvCbE6H1k/img.png?width=3534&amp;amp;height=2163&amp;amp;face=0_0_3534_2163&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/158&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/158&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/oPiAH/dJMb82eKlU5/yzJvDyeYuZ57lH5tf7A7Rk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/fx5pE/dJMb83kqeCB/VKKKlUOV2pHPE0zukrdyXK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/dds82H/dJMb88eXXcl/SkNmv8nBuXn20TvCbE6H1k/img.png?width=3534&amp;amp;height=2163&amp;amp;face=0_0_3534_2163');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;공학설계 | 기계요소(2): 타이밍벨트 선정 방법(1) - 규격&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 타이밍벨트 구동기가 발생시키는 동력을 원거리에 위치한 기계부품에 전달하는 기계요소로, 두 개의 풀리가 구동기 축과 평행하게 배치된 상태에서 두 풀리에 타이밍벨트를 걸고 한 풀리를&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3. 공학해석 검증&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2550&quot; data-origin-height=&quot;2222&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/4pFC1/btsOTcDXLPy/w9ugCMALuFYQ5CnlzBtGJK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/4pFC1/btsOTcDXLPy/w9ugCMALuFYQ5CnlzBtGJK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/4pFC1/btsOTcDXLPy/w9ugCMALuFYQ5CnlzBtGJK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F4pFC1%2FbtsOTcDXLPy%2Fw9ugCMALuFYQ5CnlzBtGJK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;384&quot; height=&quot;335&quot; data-origin-width=&quot;2550&quot; data-origin-height=&quot;2222&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;완성된 &lt;b&gt;시제품 레이아웃이 요구사항목록을 만족할지 공학해석을 수행하여 검증&lt;/b&gt;한다. 먼저 요구사항목록 중 핵심적인 사항을 추려 나열한다. 힘과 모멘트에 대한 정역학 분석, 응력과 변형량 예측을 위한 유한요소해석, 진동모드 해석을 통한 고유진동수 분석 등 시제품 래이아웃 검증을 위해 필요하다고 판단하는 공학해석을 적용하여 요구사항목록을 충족할 수 있을지 확인한다. 검증 결과 현재 레이아웃이 요구사항목록을 만족하기에 충분하지 못하다면 레이아웃을 수정한다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;4. 실패모드 설정&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Engineering Design.png&quot; data-origin-width=&quot;4342&quot; data-origin-height=&quot;2456&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/mnxs9/btsOVikn36D/9IWtj2BbtFAWlCMKfLomC0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/mnxs9/btsOVikn36D/9IWtj2BbtFAWlCMKfLomC0/img.png&quot; data-alt=&quot;실패모드 설정&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/mnxs9/btsOVikn36D/9IWtj2BbtFAWlCMKfLomC0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fmnxs9%2FbtsOVikn36D%2F9IWtj2BbtFAWlCMKfLomC0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;699&quot; height=&quot;395&quot; data-filename=&quot;Engineering Design.png&quot; data-origin-width=&quot;4342&quot; data-origin-height=&quot;2456&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;실패모드 설정&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;시제품 레이아웃에 대한 공학적 검증을 마쳤다면 시제품을 제작하기에 앞서 &lt;b&gt;시제품이&lt;/b&gt; &lt;b&gt;실제 사용환경에서 요구기능을 수행하지 못할 가능성&lt;/b&gt;을 생각해본다. 앞서 수행한 공학해석은 이상적인 사용환경을 가정하였기 때문에 실제 사용환경에서의 성능과 차이가 있다. 사용자는 이상적이지 않은 다양한 환경에서 해당 시스템을 사용할 것이므로 이에 대한 대비와 보완이 필요하다. 먼저 개념설계 단계에서 작성했던 세부 기능구조도에서 중요한 기능 블록만을 가져와 나열한다. 각 기능별로 실제 사용환경에서 시제품이 해당 기능을 제대로 내지 못하는 &lt;b&gt;실패모드(failure mode)&lt;/b&gt;를 설정한다. 설계 구성원들과 브레인스토밍을 하여 실패모드가 발생할 상황과 이를 보완하기 위한 해결책을 기술한다. 이렇게 도출된 실패모드와 이에 대한 해결책은 시제품 레이아웃에 반영하여 완성도를 높인다.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;[함께 읽으면 좋은 페이지]&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1766056555732&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;공학설계 | 기본설계(2): 견실최적설계&quot; data-og-description=&quot;1. 공학설계 2. 제품기획 2.1. 요구사항목록 3. 개념설계 3.1. 설계문제와 기능구조도 3.2. 동작원리와 설계대안 4. 기본설계 4.1. 시제품 레이아웃과 공학해석 4.2. 견실최적설계 4.2.1. 문제 정의 4.2.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/404&quot; data-og-url=&quot;https://vedacube.tistory.com/404&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/dMlbJT/hyZPBftlMk/6CTeZ0wQvoWIuj0pYIITj0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/jiUtr/hyZPMfFrCP/Z2WX66knXWrziiBf703rHk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/qaU3r/hyZPKPIhRd/eVKo3F3rwEBuHXWF7aOdd0/img.png?width=4241&amp;amp;height=1498&amp;amp;face=0_0_4241_1498&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/404&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/404&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/dMlbJT/hyZPBftlMk/6CTeZ0wQvoWIuj0pYIITj0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/jiUtr/hyZPMfFrCP/Z2WX66knXWrziiBf703rHk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/qaU3r/hyZPKPIhRd/eVKo3F3rwEBuHXWF7aOdd0/img.png?width=4241&amp;amp;height=1498&amp;amp;face=0_0_4241_1498');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;공학설계 | 기본설계(2): 견실최적설계&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 공학설계 2. 제품기획 2.1. 요구사항목록 3. 개념설계 3.1. 설계문제와 기능구조도 3.2. 동작원리와 설계대안 4. 기본설계 4.1. 시제품 레이아웃과 공학해석 4.2. 견실최적설계 4.2.1. 문제 정의 4.2.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt; &lt;b&gt;참고문헌&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #333333; font-family: 'Noto Sans Light';&quot;&gt;- 김종원. (2008). 공학설계: 창의적 신제품 개발방법론. 문운당. &lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Engineering Design</category>
      <category>공학</category>
      <category>공학설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/392</guid>
      <comments>https://vedacube.tistory.com/392#entry392comment</comments>
      <pubDate>Fri, 3 Oct 2025 18:00:48 +0900</pubDate>
    </item>
    <item>
      <title>최적설계 | 제약조건 문제 수치해법(4): 부정확 이동거리 탐색법</title>
      <link>https://vedacube.tistory.com/396</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;1. 최적설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/336&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 설계문제 정식화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/352&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.2. 제약조건의 정규화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/338&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2. 최적성 조건&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/339&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/340&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2. 부등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/341&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3. KKT 최적성 조건&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/346&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 대안 형식과 이계 필요조건&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/317&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3. 선형계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/348&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 심플렉스법&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/354&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1.1. 인위변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/353&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. scipy.optimize.linprog&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/320&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4. 이차계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/103&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. qpsolvers.solve_qp&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 비제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/166&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 최속강하법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/109&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 공액경사법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/122&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 구간감소법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/123&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. 설계문제의 선형화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/130&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.2. 순차 선형계획법 SLP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/80&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.3. 순차 이차계획법 SQP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/396&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.4. 부정확 이동거리 탐색법 ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/321&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.5. 제약최속강하법 CSD&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 자연 영감 탐색법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/397&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 유전 알고리즘 GA&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/405&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1.1. pygad.GA&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/398&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. 미분 진화 알고리즘 DE&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/156&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2.1. scipy.optimize.differential_evolution&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 다목적 최적설계 문제&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/144&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 파레토 최적점&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/431&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 가중치 합 방법&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/213&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 비지배 정렬 유전 알고리즘 NSGA-II&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/212&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3.1. pymoo.alghrithms.moo.nsga2.NSGA2&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 부정확 이동거리 탐색법&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;앞서 다룬 황금분할 탐색법은 구간감소법 중에서는 좋은 성능을 보이지만, 여전히 많은 함수값 계산을 요구하기 때문에 실제 공학 응용문제에서는 비효율적이다. 따라서 대부분의 알고리즘에서는 근사적이지만 수용 가능한 이동거리를 결정하는 부정확 이동거리 탐색법(inexact line search method)이 사용되고 있다. 해당 탐색법은 &lt;b&gt;강하함수에 대해서 특정 조건이 만족될 때까지 여러 다른 이동거리를 시도&lt;/b&gt;한다. 수용 가능한 이동거리를 결정하기 위해 &lt;b&gt;시험 이동거리 순열&lt;/b&gt;을 아래와 같이 정의한다. &lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748581182400&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
t_j = \left(\mu\right)^j;~~~~j=0,1,2,\cdots
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} t_j = \left(\mu\right)^j;~~~~j=0,1,2,\cdots \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;시험 이동거리 순열에서 &lt;i&gt;&amp;micro;&lt;/i&gt;=0.5가 대표적으로 사용되며, 기본 이동거리는 &lt;i&gt;t&lt;/i&gt;&lt;sub&gt;0&lt;/sub&gt;=1로 시작한다. &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;강하함수에 대해서 &lt;b&gt;강하조건&lt;/b&gt;이라고 부를 특정 조건이 만족되지 않으면 시험 이동거리는 이전 시험의 절반으로 줄어든다. 해당 과정은 강하조건이 만족될 때까지 계속한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 강하조건&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;k번째 반복 단계에서 시험 이동거리에 대해 강하조건을 확인하기 위한 설계점은 아래와 같이 계산된다. 이때 사용되는 탐색방향 벡터는 현재 설계점에 대해서 이차계획문제를 풀이하여 구한 벡터이다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748581662692&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathbf{x}^{\left(k+1,j\right)} = \mathbf{x}^{\left(k\right)} + t_j \mathbf{d}^{\left(k\right)}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{x}^{\left(k+1,j\right)} = \mathbf{x}^{\left(k\right)} + t_j \mathbf{d}^{\left(k\right)} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;k번째 반복 단계에서 수용 가능한 이동거리, 즉 강하함수를 이용하여 아래에 나타낸 강하조건을 만족하는 이동거리는 &lt;span style=&quot;background-color: #ffffff; color: #1f1f1f; text-align: start;&quot;&gt;&lt;i&gt;&amp;alpha;&lt;sub&gt;k&lt;/sub&gt;&lt;/i&gt;=&lt;i&gt;t&lt;sub&gt;j&lt;/sub&gt;&lt;/i&gt;로 결정되는데, 이때 결정되는 &lt;b&gt;이동거리는 강하조건을 만족하는 시험 이동거리 중에서 가장 큰 수&lt;/b&gt;이다. 이때 상수 &lt;span style=&quot;background-color: #ffffff; color: #000000; text-align: center;&quot;&gt;&lt;i&gt;&amp;gamma;&lt;/i&gt;는 0과 1 사이의 지정된 상수이다. 최적화 알고리즘의 매 반복마다 강하함수가 일정량만큼 감소해야 하므로, 강하조건은 &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #1f1f1f; text-align: start;&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #000000; text-align: center;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #1f1f1f; text-align: start;&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #000000; text-align: center;&quot;&gt;수렴하는 알고리즘을 얻기 위해 매 반복마다 만족해야 하는 중요한 조건이다.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748581875403&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathbf{\Phi} \left(\mathbf{x}^{\left(k+1,j\right)}\right) \leq \mathbf{\Phi} \left(\mathbf{x}^{\left(k\right)}\right) - t_j \gamma \left\| \mathbf{d^{\left(k\right)}} \right\|^2
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{\Phi} \left(\mathbf{x}^{\left(k+1,j\right)}\right) \leq \mathbf{\Phi} \left(\mathbf{x}^{\left(k\right)}\right) - t_j \gamma \left\| \mathbf{d^{\left(k\right)}} \right\|^2 \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;강하조건을 나타내는 부등식의 우변에서 시험 이동거리만이 유일한 변수이다. 그러나 시험 이동거리를 변경할 때마다 설계점 또한 변경되며, 이에 따라 목적함수와 제약조건 함수값도 새롭게 갱신되므로, 부등식 좌변의 강하함수 또한 새롭게 갱신된다. 실제 계산에서 강하조건 확인을 위해 다음과 같은 부등식 표현을 사용하기도 한다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748582892522&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathbf{\Phi} \left(\mathbf{x}^{\left(k+1,j\right)}\right) + t_j \gamma \left\| \mathbf{d}^{\left(k\right)} \right\|^2 \leq \mathbf{\Phi} \left(\mathbf{x}^{\left(k\right)}\right)
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{\Phi} \left(\mathbf{x}^{\left(k+1,j\right)}\right) + t_j \gamma \left\| \mathbf{d}^{\left(k\right)} \right\|^2 \leq \mathbf{\Phi} \left(\mathbf{x}^{\left(k\right)}\right) \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3. 예제&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&amp;nbsp; &amp;nbsp;다음 비선형&amp;middot;제약조건 문제에 대해 초기 설계점 (40, 0.5)에서 탐색방향은 (25.798, 0.597), 벌칙인자는 43699.135, 강하함수는 32515.215로 계산되었다. 해당 단계에서 부정확 이동거리 탐색법을 적용하여 설계 변화량에 대한 이동거리를 계산해보자. &lt;/span&gt;&lt;span style=&quot;color: #333333;&quot;&gt;이때 상수&amp;nbsp;&lt;/span&gt;&lt;i&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&amp;gamma;&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;color: #333333;&quot;&gt;는&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #333333;&quot;&gt;0.5로 선택한다.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #333333;&quot;&gt; &lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748586569079&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{minimize}~~~~&amp;amp;f = x_1^2 + 320x_1x_2 \\\\
\mathrm{subject~to}~~~~
&amp;amp;g_1 = \frac{1}{100}\left( x_1 - 60x_2\right) \leq 0 \\\\
&amp;amp;g_2 = 1 - \frac{x_1\left(x_1-x_2\right)}{3600} \leq 0 \\\\
&amp;amp;g_3 = -x_1 \leq 0 \\\\
&amp;amp;g_4 = -x_2 \leq 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{minimize}~~~~&amp;amp;f = x_1^2 + 320x_1x_2 \\\\ \mathrm{subject~to}~~~~ &amp;amp;g_1 = \frac{1}{100}\left( x_1 - 60x_2\right) \leq 0 \\\\ &amp;amp;g_2 = 1 - \frac{x_1\left(x_1-x_2\right)}{3600} \leq 0 \\\\ &amp;amp;g_3 = -x_1 \leq 0 \\\\ &amp;amp;g_4 = -x_2 \leq 0 \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;기본 시험 이동거리 &lt;i&gt;t&lt;/i&gt;&lt;sub&gt;0&lt;/sub&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;=1을 시작으로 부정확 이동거리 탐색을 실시한다. 주어진 탐색방향에서 시험 설계점은 다음과 같이 계산된다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748587591742&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathbf{x}^{\left(1,0\right)} &amp;amp;= \mathbf{x}^{\left(0\right)} + t_0 \mathbf{d}^{\left(0\right)} \\\\
&amp;amp;= 

\begin{bmatrix}
40 \\ 0.5
\end{bmatrix}

+ 1 \times

\begin{bmatrix}
25.798 \\ 0.597
\end{bmatrix} \\\\

&amp;amp;= 

\begin{bmatrix}
65.798 \\ 1.097
\end{bmatrix}

\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{x}^{\left(1,0\right)} &amp;amp;= \mathbf{x}^{\left(0\right)} + t_0 \mathbf{d}^{\left(0\right)} \\\\ &amp;amp;= \begin{bmatrix} 40 \\ 0.5 \end{bmatrix} + 1 \times \begin{bmatrix} 25.798 \\ 0.597 \end{bmatrix} \\\\ &amp;amp;= \begin{bmatrix} 65.798 \\ 1.097 \end{bmatrix} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;강하조건을 만족하는지 확인하기 위해 시험 설계점에 대해서 강하함수를 계산한다. 먼저 시험 설계점에 대해서 최대 제약조건 위배량 인자를 계산하면 다음과 같다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748587885613&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
V\left(\mathbf{x}^{\left(1,0\right)}\right) &amp;amp;= \mathrm{max}\left\{ 0;~~g_1\left(\mathbf{x}^{\left(1,0\right)}\right),g_2\left(\mathbf{x}^{\left(1,0\right)}\right),g_3\left(\mathbf{x}^{\left(1,0\right)}\right),g_4\left(\mathbf{x}^{\left(1,0\right)}\right) \right\} \\\\
&amp;amp;= \mathrm{max}\left\{ 0;~~-0.0,-0.183,-65.798,-1.097\right\} \\\\
&amp;amp;= 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} V\left(\mathbf{x}^{\left(1,0\right)}\right) &amp;amp;= \mathrm{max}\left\{ 0;~~g_1\left(\mathbf{x}^{\left(1,0\right)}\right),g_2\left(\mathbf{x}^{\left(1,0\right)}\right),g_3\left(\mathbf{x}^{\left(1,0\right)}\right),g_4\left(\mathbf{x}^{\left(1,0\right)}\right) \right\} \\\\ &amp;amp;= \mathrm{max}\left\{ 0;~~-0.0,-0.183,-65.798,-1.097\right\} \\\\ &amp;amp;= 0 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;위 연산을 기반으로 시험 설계점에 대해서 강하함수를 계산하면 다음과 같다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748588363873&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\Phi \left( \mathbf{x}^{\left(1,0\right)} \right) &amp;amp;= f \left( \mathbf{x}^{\left(1,0\right)} \right) + RV \left( \mathbf{x}^{\left(1,0\right)} \right) \\\\
&amp;amp;= 27427 + 43699.135 \times 0 \\\\
&amp;amp;= 27427
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \Phi \left( \mathbf{x}^{\left(1,0\right)} \right) &amp;amp;= f \left( \mathbf{x}^{\left(1,0\right)} \right) + RV \left( \mathbf{x}^{\left(1,0\right)} \right) \\\\ &amp;amp;= 27427 + 43699.135 \times 0 \\\\ &amp;amp;= 27427 \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;첫 번째 시험 설계점에 대해서 강하조건을 검토한다. 첫 번째 시험 설계점에서의 강하함수를 초기 설계점에서의 강하함수와 비교하였을 때 그 값이 감소하였으므로, 즉 강하조건을 만족하므로 해당 시험 이동거리 &lt;i&gt;t&lt;/i&gt;&lt;sub&gt;0&lt;/sub&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;=1&lt;/span&gt;는 수용 가능하다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748588947036&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathbf{\Phi} \left(\mathbf{x}^{\left(1,0\right)}\right) + t_0 \gamma \left\| \mathbf{d}^{\left(0\right)} \right\|^2 &amp;amp;= 27427 + 1 \times 0.5 \times \left( 25.798^2 + 0.597^2 \right) \\\\
&amp;amp;= 27760 \\\\
&amp;amp;\leq \mathbf{\Phi} \left(\mathbf{x}^{\left(0\right)}\right) \\\\
&amp;amp;= 32515.215
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{\Phi} \left(\mathbf{x}^{\left(1,0\right)}\right) + t_0 \gamma \left\| \mathbf{d}^{\left(0\right)} \right\|^2 &amp;amp;= 27427 + 1 \times 0.5 \times \left( 25.798^2 + 0.597^2 \right) \\\\ &amp;amp;= 27760 \\\\ &amp;amp;\leq \mathbf{\Phi} \left(\mathbf{x}^{\left(0\right)}\right) \\\\ &amp;amp;= 32515.215 \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;color: #333333; font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;따라서 해당 단계에서의 이동거리는 다음과 같이 결정된다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748589322218&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\therefore~\alpha_0 = t_0 = 1
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \therefore~\alpha_0 = t_0 = 1 \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;[함께 읽으면 좋은 페이지]&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;최적설계 | 비제약조건 문제 수치해법(3): 구간감소법&quot; data-ke-align=&quot;alignCenter&quot; data-og-description=&quot;1. 구간감소법 목적함수가 간단하면 최적성의 필요조건과 충분조건을 고려하여 이동거리를 해석적으로 결정할 수 있다. 그러나 대부분의 문제는 목적함수가 간단하지 않기 때문에 해석적 풀이&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/122&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bpKUua/hyY1c0LB6w/9Ch8jPsECbfPcrRWnokk2k/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/sYbUz/hyY1cfnrv7/nJfh4VwJyv6eInGDn9voL1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cnOBJP/hyY05m2t0Z/auxwBx6aKAj31NIkBbKeI1/img.png?width=4088&amp;amp;height=1538&amp;amp;face=0_0_4088_1538&quot; data-og-url=&quot;https://vedacube.tistory.com/122&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/122&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/122&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bpKUua/hyY1c0LB6w/9Ch8jPsECbfPcrRWnokk2k/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/sYbUz/hyY1cfnrv7/nJfh4VwJyv6eInGDn9voL1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cnOBJP/hyY05m2t0Z/auxwBx6aKAj31NIkBbKeI1/img.png?width=4088&amp;amp;height=1538&amp;amp;face=0_0_4088_1538');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 비제약조건 문제 수치해법(3): 구간감소법&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 구간감소법 목적함수가 간단하면 최적성의 필요조건과 충분조건을 고려하여 이동거리를 해석적으로 결정할 수 있다. 그러나 대부분의 문제는 목적함수가 간단하지 않기 때문에 해석적 풀이&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1758892193437&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 제약조건 문제 수치해법(3): 순차 이차계획법 SQP&quot; data-og-description=&quot;1. 순차 이차계획법 앞서 다룬 순차 선형계획법은 일반적인 제약조건 최적화 문제를 풀이를 위한 단순하고 직관적인 알고리즘이지만, 상황에 따라 정확한 최적해에 수렴하지 않는 등 강건성이 &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/80&quot; data-og-url=&quot;https://vedacube.tistory.com/80&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/4DOmc/hyZJ8iyDQk/KSLCGZ9VHXop5ePQKrhZkk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/ditwMh/hyZKbM7snW/cxgJWIm5rMyuMYktKdcMi0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/80&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/80&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/4DOmc/hyZJ8iyDQk/KSLCGZ9VHXop5ePQKrhZkk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/ditwMh/hyZKbM7snW/cxgJWIm5rMyuMYktKdcMi0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 제약조건 문제 수치해법(3): 순차 이차계획법 SQP&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 순차 이차계획법 앞서 다룬 순차 선형계획법은 일반적인 제약조건 최적화 문제를 풀이를 위한 단순하고 직관적인 알고리즘이지만, 상황에 따라 정확한 최적해에 수렴하지 않는 등 강건성이&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;-&amp;nbsp;&lt;span style=&quot;color: #222222;&quot;&gt;Arora, J. S. (2016).&amp;nbsp;&lt;/span&gt;&lt;i&gt;Introduction to optimum design&lt;/i&gt;&lt;span style=&quot;color: #222222;&quot;&gt;. Elsevier.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Optimum Design</category>
      <category>공학</category>
      <category>최적설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/396</guid>
      <comments>https://vedacube.tistory.com/396#entry396comment</comments>
      <pubDate>Fri, 26 Sep 2025 18:00:27 +0900</pubDate>
    </item>
    <item>
      <title>파이썬 | 파일 처리(2): with-as</title>
      <link>https://vedacube.tistory.com/402</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/358&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 파이썬&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/347&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 기본 기능과 규칙&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 변수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.1. 기본자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/356&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1.1. 정수형, 실수형, 논리형, 문자열&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.2. 복합자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/149&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.1. 리스트, 튜플&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/355&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.2. 딕셔너리, 세트&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.3. 자료형 메소드&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/359&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 리스트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/361&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.2. 딕셔너리 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/362&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.3. 세트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/349&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.4. 객체 복사&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 조건문과 반복문&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/328&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. if-elif-else, while, for&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/234&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. range, enumerate, zip&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/165&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.3. break, continue&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 예외 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/295&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. try-except&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 사용자 정의 함수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/145&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. def-return&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/137&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 매개변수와 전달인자&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/323&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 지역변수와 전역변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 모듈, 패키지, 라이브러리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/322&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. impoart-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 파일 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/151&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 메모장 파일 쓰고 읽기&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/402&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. with-as ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 객체 지향 프로그래밍&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/152&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 클래스와 인스턴스&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/350&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 속성과 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
  &lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/161&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 클래스 상속&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. with-as&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2213&quot; data-origin-height=&quot;1390&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/n7wOU/btsOfYZ9ak4/ZSeRWLCJ4S9KqQmPkNS0f0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/n7wOU/btsOfYZ9ak4/ZSeRWLCJ4S9KqQmPkNS0f0/img.png&quot; data-alt=&quot;with-as&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/n7wOU/btsOfYZ9ak4/ZSeRWLCJ4S9KqQmPkNS0f0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fn7wOU%2FbtsOfYZ9ak4%2FZSeRWLCJ4S9KqQmPkNS0f0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;406&quot; height=&quot;255&quot; data-origin-width=&quot;2213&quot; data-origin-height=&quot;1390&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;with-as&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;파일 객체를 생성하고 텍스트 파일을 처리할 때 &lt;b&gt;with 명령문&lt;/b&gt;을 사용하면 프로그램을 보다 편리하게 작성할 수 있다. with 명령문 뒤에 open() 함수를 호출하여 파일 객체를 생성하고, as 명령문 뒤에 파일 객체를 할당할 변수의 이름을 작성한다. &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;쌍점 아래로 파일 처리를 위한 명령문을 작성하면 되며, 이때 &lt;b&gt;close() 메소드는 호출할 필요가 없다.&lt;/b&gt; with 명령문에 속한 모든 명령문을 실행한 이후에 자동으로 파일 접근 권한을 양도하기 때문이다.&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;# 파일 쓰기
with open('VEDACUBE.txt', mode='w') as blog:
    blog.write('Hello! Welcome to VEDACUBE!\n')
    blog.write(r'https://vedacube.tistory.com/')    

# 파일 수정하기
category = ['Engineering', 'Technology', 'Programming']
with open('VEDACUBE.txt', mode='a') as blog_revise:
    blog_revise.write('\n[Category]\n')
    for i in category:
        blog_revise.write(f'- {i}\n')

# 파일 읽기
with open('VEDACUBE.txt', mode='r') as data:
    for line in data:
        print(line)&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;파이썬에서 텍스트 파일을 처리하기 위해 open() 함수로 파일 객체를 생성한 뒤에는 반드시 close() 메소드로 텍스트 파일의 제어 권한을 외부 프로그램으로 양도해야 한다. 만약 파일 처리를 하는 과정에서 오류가 발생한다면 close() 메소드를 호출하지 못하고 프로그램이 중단된다. 이때 파일의 제어 권한이 외부 프로그램으로 양도되지 않아 텍스트 파일에&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;예기치 못한 문제가 발생할 수 있다. 반면에 with 명령문을 &lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;사용하면&amp;nbsp;&lt;/span&gt;해당 명령문이 종료될 때 close() 메소드를 호출하지 않아도 텍스트 파일에 대한 접근 권한을 자동으로 양도&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;한다. 이뿐만 아니라&lt;b&gt; with 명령문에 포함된 명령문을 실행하던 중에 오류가 발생하더라도 접근 권한을 양도하고 프로그램을 중단하므로 텍스트 파일을 안전하게 보호할 수 있다.&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 인코딩&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;13.png&quot; data-origin-width=&quot;2313&quot; data-origin-height=&quot;2461&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/VNiMW/btsOgJ2L6n2/KuJaHw3kLipUuoVk8HJM9k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/VNiMW/btsOgJ2L6n2/KuJaHw3kLipUuoVk8HJM9k/img.png&quot; data-alt=&quot;인코딩&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/VNiMW/btsOgJ2L6n2/KuJaHw3kLipUuoVk8HJM9k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FVNiMW%2FbtsOgJ2L6n2%2FKuJaHw3kLipUuoVk8HJM9k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;399&quot; height=&quot;425&quot; data-filename=&quot;13.png&quot; data-origin-width=&quot;2313&quot; data-origin-height=&quot;2461&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;인코딩&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;윈도우, 맥, 리눅스 등의 운영체제(Operaing System, OS)는 텍스트 파일을 저장할 때 사전에 정해진 규칙에 따라 변환, 즉 &lt;b&gt;인코딩(encoding)&lt;/b&gt;하여 저장한다. 동일한 내용을 담은 텍스트 파일이더라도 인코딩 형식이 다르다면 텍스트가 읽을 수 없는 형태로 출력된다.&amp;nbsp;이러한 문제는 서로 다른 운영체제끼리 텍스트 파일을 주고 받을 때 발생하는데, 이는 &lt;b&gt;각 운영체제가 사용하는 인코딩 형식이 다르기 때문&lt;/b&gt;이다. 파이썬에서 open() 함수를 호출할 때 인코딩 형식을 지정할 수 있는데, 아래 예시와 같이 키워드 인자 encoding에 cp949, euc-kr, utf-8 등의 인코딩 형식을 할당하면 된다. &lt;b&gt;utf-8 형식은 영어 외 모든 언어를 지원하여&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;가장 널리 사용&lt;/b&gt;되므로, 파이썬으로 텍스트 파일을 처리하여 다른 운영체제와 주고 받을 일이 있다면 해당 인코딩 형식을 추천한다.&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;# 파일 객체 생성 (인코딩 형식 지정: utf-8)
with open('VEDACUBE.txt', mode='w', encoding='utf-8') as blog:
    blog.write('Hello! Welcome to VEDACUBE!\n')
    blog.write(r'https://vedacube.tistory.com/')    

with open('VEDACUBE.txt', mode='r', encoding='utf-8') as data:
    for line in data:
        print(line)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1766060403595&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;파이썬 | 객체 지향 프로그래밍(1): 클래스와 인스턴스&quot; data-og-description=&quot;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/152&quot; data-og-url=&quot;https://vedacube.tistory.com/152&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/c2sj7b/hyZPAOpW4u/0I5ZloAkveRlqtghrIDW3k/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/ro4uc/hyZPqdX8t0/jQXMeubZNiX9Ba9VNFivF1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/3w4QN/hyZPUdrVIf/PrcqFhYY1PqIkfcHCD2fCk/img.png?width=3949&amp;amp;height=4047&amp;amp;face=0_0_3949_4047&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/152&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/152&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/c2sj7b/hyZPAOpW4u/0I5ZloAkveRlqtghrIDW3k/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/ro4uc/hyZPqdX8t0/jQXMeubZNiX9Ba9VNFivF1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/3w4QN/hyZPUdrVIf/PrcqFhYY1PqIkfcHCD2fCk/img.png?width=3949&amp;amp;height=4047&amp;amp;face=0_0_3949_4047');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;파이썬 | 객체 지향 프로그래밍(1): 클래스와 인스턴스&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;- 박진수. (2019). 바로 쓰는 파이썬. 서울대학교출판문화원.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Programming/Python</category>
      <category>파이썬</category>
      <category>프로그래밍</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/402</guid>
      <comments>https://vedacube.tistory.com/402#entry402comment</comments>
      <pubDate>Fri, 19 Sep 2025 18:00:09 +0900</pubDate>
    </item>
    <item>
      <title>파이썬 | 파일 처리(1): 메모장 파일 쓰고 읽기</title>
      <link>https://vedacube.tistory.com/151</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/358&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 파이썬&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/347&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 기본 기능과 규칙&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 변수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.1. 기본자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/356&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1.1. 정수형, 실수형, 논리형, 문자열&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.2. 복합자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/149&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.1. 리스트, 튜플&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/355&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.2. 딕셔너리, 세트&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.3. 자료형 메소드&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/359&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 리스트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/361&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.2. 딕셔너리 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/362&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.3. 세트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/349&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.4. 객체 복사&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 조건문과 반복문&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/328&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. if-elif-else, while, for&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/234&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. range, enumerate, zip&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/165&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.3. break, continue&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 예외 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/295&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. try-except&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 사용자 정의 함수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/145&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. def-return&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/137&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 매개변수와 전달인자&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/323&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 지역변수와 전역변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 모듈, 패키지, 라이브러리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/322&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. impoart-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 파일 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/151&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 메모장 파일 쓰고 읽기 ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/402&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. with-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 객체 지향 프로그래밍&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/152&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 클래스와 인스턴스&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/350&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 속성과 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
  &lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/161&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 클래스 상속&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 파일 처리&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2214&quot; data-origin-height=&quot;1389&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/by6CW8/btsOeS6ktNL/pj4UAuZD7AjWXav1g1Zzg1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/by6CW8/btsOeS6ktNL/pj4UAuZD7AjWXav1g1Zzg1/img.png&quot; data-alt=&quot;파일 처리&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/by6CW8/btsOeS6ktNL/pj4UAuZD7AjWXav1g1Zzg1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fby6CW8%2FbtsOeS6ktNL%2Fpj4UAuZD7AjWXav1g1Zzg1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;406&quot; height=&quot;255&quot; data-origin-width=&quot;2214&quot; data-origin-height=&quot;1389&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;파일 처리&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;b&gt;메모장 파일&lt;/b&gt;로도 익숙한 텍스트 형식은 파이썬에서 흔하게 사용하는 형식이다. 파일 내용으로 텍스트만 포함하며, 글꼴이나 이미지 등은 포함하지 않는다. 사람이 바로 읽을 수 있는 아스키(ASCII)나 유니코드(Unicode) 문자로 텍스트가 저장되므로 직접 읽거나 편집하기에 용이하다. 파이썬은 &lt;b&gt;텍스트 파일에 저장된 데이터를 불러와 내용을 수정하고 그 결과를 다시 텍스트 파일로 저장하는 &lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;등의&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&lt;b&gt;파일 처리를 지원&lt;/b&gt;하며,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;이를 이용해 기존에 저장된 메모장의 내용을 수정하거나 새롭게 작성하는 것이 가능하다.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 파일 쓰기&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;2218&quot; data-origin-height=&quot;1356&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/YthEq/btsOf1CzVCy/k52u6Nvlzho1DfkgKotSak/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/YthEq/btsOf1CzVCy/k52u6Nvlzho1DfkgKotSak/img.png&quot; data-alt=&quot;파일 쓰기&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/YthEq/btsOf1CzVCy/k52u6Nvlzho1DfkgKotSak/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FYthEq%2FbtsOf1CzVCy%2Fk52u6Nvlzho1DfkgKotSak%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;417&quot; height=&quot;255&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;2218&quot; data-origin-height=&quot;1356&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;파일 쓰기&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;파이썬으로 텍스트 파일을 처리하기 위해서는 아래 예시와 같이 &lt;b&gt;open() 함수&lt;/b&gt;를 통해 해당 파일과 연결된 객체를 생성하고 변수에 할당해야 한다. 이때 함수의 &lt;b&gt;첫 번째 위치 전달인자로 텍스트 파일의 이름과 확장자를 포함한 파일 경로 문자열을 입력&lt;/b&gt;한다. 텍스트 파일 이름과 확장자만을 포함한 문자열을 입력할 경우, 텍스트 파일이 파이썬 파일과 동일한 경로에 위치하고 있다는 것을 지칭한다.&amp;nbsp;&lt;b&gt;두 번째 키워드 전달인자 mode에는 텍스트 파일을 읽기용으로 처리할 것인지, 쓰기용으로 처리할 것인지를 지정&lt;/b&gt;할 수 있다. &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;해당 예제에서는 새로운 파일을 생성하여 텍스트를 작성(write)하기 위해 &lt;b&gt;'w'&lt;/b&gt;를 할당하였다. &lt;b&gt;만약 동일한 이름의 텍스트 파일이 동일한 경로에 이미 존재하면 기존의 데이터를 삭제하고 새로 작성&lt;/b&gt;하므로 주의가 필요하다. &lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;파일 객체를 쓰기 모드로 생성한 후에는 &lt;b&gt;write() 메소드&lt;/b&gt;를 이용해 아래 예시와 같이 문자열을 텍스트 파일에 추가할 수 있으며, 작성을 모두 완료하였다면 파일 객체를 닫기 위해 &lt;b&gt;close() 메소드&lt;/b&gt;를 반드시 사용한다. 쓰기 모드 상태에서 close() 메소드를 호출하지 않고 프로그램을 종료하면 텍스트 파일 제어 권한이 제대로 양도되지 않아 파이썬 외 프로그램에서 텍스트 파일 접근 시 문제가 발생할 수 있으니 항상 확인하자.&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;blog = open('VEDACUBE.txt', mode='w')	# 파일 객체 생성 (쓰기 모드)

blog.write('Hello! ')			# 텍스트 파일에 문자열 작성
blog.write('Welcome to VEDACUBE!\n')
blog.write(r'https://vedacube.tistory.com/')

blog.close()				# 파일 객체 종료&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3. 파일 수정하기&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;2218&quot; data-origin-height=&quot;1354&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bifCQH/btsOdE3qqwv/XRhEspfARidIkfhbI9j2TK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bifCQH/btsOdE3qqwv/XRhEspfARidIkfhbI9j2TK/img.png&quot; data-alt=&quot;파일 수정하기&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bifCQH/btsOdE3qqwv/XRhEspfARidIkfhbI9j2TK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbifCQH%2FbtsOdE3qqwv%2FXRhEspfARidIkfhbI9j2TK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;418&quot; height=&quot;255&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;2218&quot; data-origin-height=&quot;1354&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;파일 수정하기&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;b&gt;기존에 있는 텍스트 파일을 불러와 텍스트를 추가&lt;/b&gt;(add)하고 싶다면 키워드 전달인자 mode에 &lt;b&gt;'a'&lt;/b&gt;를 할당한다. write() 메소드로 텍스트 파일에 문자열을 입력하면 기존에 있었던 텍스트 바로 뒤에 문자열을 추가한다. 만약 문자열로 입력한 파일 경로에 텍스트 파일이 존재하지 않더라도 파일을 새로 생성하여 처리한다. 기능 자체는 'w'와 같지만 기존에 있는 텍스트 파일을 삭제하지 않고 보존한 상태에서 내용을 추가한다는 점이 다르다.&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;category = ['Engineering', 'Technology', 'Programming']

blog_revise = open('VEDACUBE.txt', mode='a')	# 파일 객체 생성 (추가 모드)

blog_revise.write('\n[Category]\n')		# 텍스트 파일에 문자열 추가
for i in category:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;blog_revise.write(f'- {i}\n')

blog_revise.close()				# 파일 객체 종료&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;b&gt;텍스트 파일에는 문자열만 입력&lt;/b&gt;할 수 있으므로, 파일에&amp;nbsp;입력하려는 변수의 자료형이 정수나 실수라면 아래 예시처럼 문자열로 형변환하여야 한다. 형변환 하지 않고 정수나 실수를 텍스트 파일에 입력하려 하면 오류가 발생하니 주의하도록 하자.&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;numbers =[1, '0', -7, '2025', 3.141, -2.718]

blog_revise = open('VEDACUBE.txt', mode='a')

for number in numbers:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if type(number) != str:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;blog_revise.write(f'{str(number)}\n')	# 문자열로 형변환
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;else:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;blog_revise.write(f'{number}\n')

blog_revise.close()&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;4. 파일 읽기&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;2221&quot; data-origin-height=&quot;1602&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cemwy4/btsOemnEhcF/XRmzdhqC1qCG79TvCzx4b0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cemwy4/btsOemnEhcF/XRmzdhqC1qCG79TvCzx4b0/img.png&quot; data-alt=&quot;파일 읽기&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cemwy4/btsOemnEhcF/XRmzdhqC1qCG79TvCzx4b0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcemwy4%2FbtsOemnEhcF%2FXRmzdhqC1qCG79TvCzx4b0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;437&quot; height=&quot;315&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;2221&quot; data-origin-height=&quot;1602&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;파일 읽기&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;텍스트 파일에 저장된 문자열을 불러오기 위해 읽기(read)용으로 파일을 처리할 때는 키워드 전달인자 mode에 &lt;b&gt;'r'&lt;/b&gt;을 할당한다. 이때 문자열로 입력한 파일 경로에 텍스트 파일이 존재하지 않으면 오류가 발생한다. 텍스트 파일을 읽을 때는 주로 read(), readline(), readlines() 메소드를 사용한다. &lt;b&gt;read() 메소드는 텍스트 파일 내에 있는 문자열을 모두 복사하여 하나의 문자열로 반환&lt;/b&gt;한다.&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;note = open('VEDACUBE.txt', mode='r')	# 파일 객체 생성 (읽기 모드)

data = note.read()			# 텍스트 파일 내 문자열 전체 복사
print(data)

note.close()&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;b&gt;readline() 메소드는 텍스트 파일 내에 있는 문자열 한 줄을 복사하여 문자열로 반환&lt;/b&gt;한다. 해당 메소드를 한 번 더 사용하면 다음 줄에 있는 문자열을 복사하여 반환한다. 텍스트 파일 내 문자열을 끝까지 출력하고 싶은데 몇 줄을 포함하고 있는지 모른다면 readline() 메소드를 사용하지 않고도 for문을 이용하여 아래 예시처럼 출력할 수 있다.&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;note = open('VEDACUBE.txt', mode='r')

data1 = note.readline()		# 텍스트 파일 내 문자열 한 줄 복사(1)
print(data1)

data2 = note.readline()		# 텍스트 파일 내 문자열 한 줄 복사(2)
print(data2)

for line in note:		# 텍스트 파일 내 문자열을 모두 출력
    print(line)

note.close()&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;b&gt;readlines() 메소드는 텍스트 파일 내에 있는 문자열을 한 줄 단위로 복사하여 리스트로 반환&lt;/b&gt;한다. read() 메소드처럼 모든 문자열을 복사하지만, readline() 메소드처럼 한 줄 단위로 객체를 생성한다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1748394915876&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;note = open('VEDACUBE.txt', mode='r')

data = note.readlines()		# 텍스트 파일 내 문자열 한 줄 단위 리스트로 반환
print(data)

for line in data:
    print(line)

note.close()&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1766060345862&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;파이썬 | 파일 처리(2): with-as&quot; data-og-description=&quot;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/402&quot; data-og-url=&quot;https://vedacube.tistory.com/402&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/eEYeo/hyZPDpuNl8/CFPoKxYmzEWINyk4kg5Bj1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cI4ZUm/hyZPIEk91Z/bm6z6lerSZamjCmgQTDKU0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bLFLA1/hyZPVwE9GD/YdcCzPciFHC789vkJ1K28k/img.png?width=2313&amp;amp;height=2461&amp;amp;face=0_0_2313_2461&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/402&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/402&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/eEYeo/hyZPDpuNl8/CFPoKxYmzEWINyk4kg5Bj1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cI4ZUm/hyZPIEk91Z/bm6z6lerSZamjCmgQTDKU0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bLFLA1/hyZPVwE9GD/YdcCzPciFHC789vkJ1K28k/img.png?width=2313&amp;amp;height=2461&amp;amp;face=0_0_2313_2461');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;파이썬 | 파일 처리(2): with-as&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;- 박진수. (2019). 바로 쓰는 파이썬. 서울대학교출판문화원.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Programming/Python</category>
      <category>파이썬</category>
      <category>프로그래밍</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/151</guid>
      <comments>https://vedacube.tistory.com/151#entry151comment</comments>
      <pubDate>Fri, 12 Sep 2025 18:00:46 +0900</pubDate>
    </item>
    <item>
      <title>공학설계 | 개념설계(2): 동작원리와 설계대안</title>
      <link>https://vedacube.tistory.com/325</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/386&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 공학설계&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 제품기획&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/390&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 요구사항목록&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 개념설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/391&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 설계문제와 기능구조도&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/325&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. 동작원리와 설계대안 ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 기본설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/392&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. 시제품 레이아웃과 공학해석&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/404&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2. 견실최적설계&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/409&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.1. 문제 정의&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/410&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.2. 제1차 실험 설계 및 수행&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/411&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.3. 민감도 분석&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 상세설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/393&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 제작도면과 자재소요서&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 동작원리 탐색&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;4181&quot; data-origin-height=&quot;3537&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bnTv5J/btsOrVJZwFp/ZU8PHPAkmkKOnqDmocAjXK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bnTv5J/btsOrVJZwFp/ZU8PHPAkmkKOnqDmocAjXK/img.png&quot; data-alt=&quot;동작원리 탐색표&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bnTv5J/btsOrVJZwFp/ZU8PHPAkmkKOnqDmocAjXK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbnTv5J%2FbtsOrVJZwFp%2FZU8PHPAkmkKOnqDmocAjXK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;586&quot; height=&quot;496&quot; data-origin-width=&quot;4181&quot; data-origin-height=&quot;3537&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;동작원리 탐색표&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;세부 기능구조도를 완성했다면 각 기능블록을 구현할 수 있는 동작원리를 탐색한다. 설계 구성원들과 &lt;b&gt;문헌조사를 하거나 아이디어를 발굴하여 각 세부 기능별로 동작원리를 나열&lt;/b&gt;한다. 이때 동작원리를 최대한 다양하게 탐색할수록 설계대안을 창안할 때 창의적이고 효과적인 조합이 나올 가능성을 높일 수 있다. 탐색한 동작원리는 설명과 간단한 그림을 포함하여 &lt;b&gt;동작원리 탐색표&lt;/b&gt;(morphological chart)에 정리한다. 동작원리 탐색표의 왼쪽 열에는 세부 기능구조도를 구성하는 세부 기능블록을 빠짐없이 나열하고, 각 행마다 세부 기능을 구현하기 위한 동작원리를 나열한다.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 설계대안 창안&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;4201&quot; data-origin-height=&quot;1965&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/oI3KU/btsOrxbN8BO/wF3KGUAkpnA0dZfpdVY16k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/oI3KU/btsOrxbN8BO/wF3KGUAkpnA0dZfpdVY16k/img.png&quot; data-alt=&quot;설계대안 창안(1)&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/oI3KU/btsOrxbN8BO/wF3KGUAkpnA0dZfpdVY16k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FoI3KU%2FbtsOrxbN8BO%2FwF3KGUAkpnA0dZfpdVY16k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;674&quot; height=&quot;315&quot; data-origin-width=&quot;4201&quot; data-origin-height=&quot;1965&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;설계대안 창안(1)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;b&gt;동작원리 탐색표의 각 행마다 동작원리 한 가지를 선택하여 하나의 시스템으로 조합&lt;/b&gt;한다. 각 동작원리들이 서로 어떻게 연결되어 하나의 시스템으로 통합할 것인지 생각하면서 입체도나 3D CAD로 형상을 구체적으로 나타낸다. 이렇게 창안한 설계대안은 동작원리에 따라 각각의 세부 기능을 순서대로 수행하며 전체 기능을 수행하고, 앞서 추출했던 설계문제를 해결하는 선택지가 된다. &lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;4261&quot; data-origin-height=&quot;1965&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dlVlA1/btsOrB52sbY/kYgiFka8uVJJoFOoICaT40/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dlVlA1/btsOrB52sbY/kYgiFka8uVJJoFOoICaT40/img.png&quot; data-alt=&quot;설계대안 창안(2)&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dlVlA1/btsOrB52sbY/kYgiFka8uVJJoFOoICaT40/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdlVlA1%2FbtsOrB52sbY%2FkYgiFka8uVJJoFOoICaT40%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;682&quot; height=&quot;315&quot; data-origin-width=&quot;4261&quot; data-origin-height=&quot;1965&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;설계대안 창안(2)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;이제 &lt;b&gt;각 세부기능에 대해 동작원리를 이전과 다르게 선택하여 조합&lt;/b&gt;한다. 이를 통해 동일한 설계문제를 해결하지만 다른 동작원리를 가진 새로운 선택지를 얻을 수 있다. 해당 과정을 반복하면 사용자가 요구하는 기능을 누락 없이 구현하면서도 다양한 설계대안을 창안할 수 있다. 모든 조합의 설계대안을 창안할 필요는 없으나, 최대한 많고 다양한 설계대안을 창안하여 선택지를 늘리는 것을 목표로 한다. 이때 &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;선택한 동작원리들이 서로 통합되지 못하는 경우나 기존에 창안한 대안과 유사한 경우에는 설계대안 선택지에서 제외한다.&lt;/span&gt;&lt;/p&gt;
&lt;h2 style=&quot;text-align: justify;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3. 설계대안 비교 분석&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;4342&quot; data-origin-height=&quot;3503&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xHy3m/btsOtuxEXO8/Xdklbgyd9tUK9WtyK6A65k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xHy3m/btsOtuxEXO8/Xdklbgyd9tUK9WtyK6A65k/img.png&quot; data-alt=&quot;설계대안 장단점 분석표(1)&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xHy3m/btsOtuxEXO8/Xdklbgyd9tUK9WtyK6A65k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FxHy3m%2FbtsOtuxEXO8%2FXdklbgyd9tUK9WtyK6A65k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;688&quot; height=&quot;555&quot; data-origin-width=&quot;4342&quot; data-origin-height=&quot;3503&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;설계대안 장단점 분석표(1)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;설계 구성원들과 &lt;b&gt;각 설계대안의 장단점을 토의하여 최적 설계대안을 선정&lt;/b&gt;한다. 제품 기획 단계에서 작성했던 요구사항목록으로 돌아가서 각 설계대안들이 요구기능과 제한조건을 얼마나 충족하는지 확인하기 위해 &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&lt;b&gt;설계대안 장단점 분석표&lt;/b&gt;를 작성한다. &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;요구사항목록으로부터 요구기능과 제한조건을 발췌하고 이를 분석표 상단에 나열한다. 앞서 창안했던 설계대안들은 왼쪽 열에 나열한다. 각 설계대안들이 요구기능과 제한조건을 어느 정도 충족하는지 설계 구성원들과 토론하여 그 결과를 표에 기입한다. 토론 과정에서 언급된 각 설계대안의 장단점도 추후에 참고할 수 있도록 기록한다. 모든 논의를 바탕으로 각 설계대안에 대한 종합 평가를 마지막 열에 기록한다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;4342&quot; data-origin-height=&quot;2005&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c3sa7w/btsOuXmkCqi/BCaqhkAB3Z0FAFcVzYcl4k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c3sa7w/btsOuXmkCqi/BCaqhkAB3Z0FAFcVzYcl4k/img.png&quot; data-alt=&quot;설계대안 장단점 분석표(2)&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c3sa7w/btsOuXmkCqi/BCaqhkAB3Z0FAFcVzYcl4k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc3sa7w%2FbtsOuXmkCqi%2FBCaqhkAB3Z0FAFcVzYcl4k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;682&quot; height=&quot;315&quot; data-origin-width=&quot;4342&quot; data-origin-height=&quot;2005&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;설계대안 장단점 분석표(2)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;검토한 설계대안 중 요구사항목록을 충족하기에 부족하다고 판단한 설계대안은 제외하고, 나머지 설계대안에 대해서 장단점을 구체적으로 토의한다. 특히 단점은 어떻게 보완할 수 있을지 논의한다. 각 설계대안별 장단점과 단점 보완책은 추후에 최적 설계대안을 선정할 때 참고할 수 있도록 표로 정리한다.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 style=&quot;text-align: justify;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;4. 최적 설계대안 선정&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;12.png&quot; data-origin-width=&quot;2376&quot; data-origin-height=&quot;2753&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cBQZmL/btsOuKm6sJ8/4MDXK1RYdPtR8pugWR4doK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cBQZmL/btsOuKm6sJ8/4MDXK1RYdPtR8pugWR4doK/img.png&quot; data-alt=&quot;설계대안 평가표&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cBQZmL/btsOuKm6sJ8/4MDXK1RYdPtR8pugWR4doK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcBQZmL%2FbtsOuKm6sJ8%2F4MDXK1RYdPtR8pugWR4doK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;393&quot; height=&quot;455&quot; data-filename=&quot;12.png&quot; data-origin-width=&quot;2376&quot; data-origin-height=&quot;2753&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;설계대안 평가표&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;이제 요구사항목록을 충족하기에 가장 적합하다고 생각하는 최적 설계대안을 선정한다. 이를 위해 &lt;b&gt;설계대안 평가표&lt;/b&gt;를 작성하여 각 설계대안마다 점수를 부여하고 비교한다. 요구사항목록을 포함한 평가항목을 왼쪽 열에 나열하고, 각 항목의 중요도에 따라 가중치를 부여한다. 이때 평가항목의 수는 편의를 위해 15개 이하로, 가중치의 합은 10점으로 구성하는 것을 추천하며, &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;요구사항 외에 추가할만한 평가항목은 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;●&amp;nbsp;&amp;nbsp;단순성&amp;nbsp; |&amp;nbsp; 구조의 복잡도, 부품의 수, 부피 등&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;●&amp;nbsp; 안전성 |&amp;nbsp; 사용 안전성, 안전장치 등&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;●&amp;nbsp; 인터페이스&amp;nbsp; |&amp;nbsp; 조작 편의성, 조작 접근성 등&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt; &lt;span style=&quot;font-family: 'Noto Sans Light'; background-color: #fcfcfc; color: #333333; text-align: left;&quot;&gt;●&lt;/span&gt;&amp;nbsp; 제조 용이성&amp;nbsp; |&amp;nbsp; 제조 난이도, 조립 난이도 등&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt; &lt;span style=&quot;font-family: 'Noto Sans Light'; background-color: #fcfcfc; color: #333333; text-align: left;&quot;&gt;●&lt;/span&gt;&amp;nbsp; 제조원가&amp;nbsp; |&amp;nbsp; 제조비용, 부품 가격 등&lt;/span&gt;&lt;/blockquote&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;설계 구성원들과 토의하여 각 설계대안이 각 평가항목을 얼마나 충족하는지 1점부터 5점까지 점수를 부여한다. 평가를 완료했다면 가중치를 고려하여 점수를 환산하고 각 설계대안별 합계 점수를 계산한다. 설계대안 평가표에서 &lt;b&gt;가장 큰 점수를 받은 설계대안을 최적 설계대안으로 선정&lt;/b&gt;한다. 설계대안의 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;점수 합계가 크게 나지 않아 어떤 설계대안을 최적 설계대안으로 선정하기 애매한 경우에는 설계 구성원들과 충분한 토론 과정을 거쳐 최적 설계대안을 선정하거나, 해당 설계대안들의 장점을 합하여 새로운 설계대안을 창안하는 것도 방법이다. 만&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;약 시제품을 제작하는 데 소요되는 시간과 비용이 크지 않다면 해당 설계대안을 모두 다음 설계단계로 넘겨 평가한 뒤 최적 설계대안을 선정하는 것이 확&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;실하겠다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1766056497005&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;공학설계 | 기본설계(1): 시제품 레이아웃과 공학해석&quot; data-og-description=&quot;1. 공학설계 2. 제품기획 2.1. 요구사항목록 3. 개념설계 3.1. 설계문제와 기능구조도 3.2. 동작원리와 설계대안 4. 기본설계 4.1. 시제품 레이아웃과 공학해석 4.2. 견실최적설계 4.2.1. 문제 정의 4.2.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/392&quot; data-og-url=&quot;https://vedacube.tistory.com/392&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/d4by69/hyZPZeKWnZ/O4rsosNdkQPKLu7nkhcKwK/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/g5RJt/hyZPywhJNj/CNrk81VYlQWFfdQnPiYX90/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/vc6m7/hyZPNllCCn/kjcJSZzkmA74WIoa8JsoK1/img.png?width=4342&amp;amp;height=2456&amp;amp;face=0_0_4342_2456&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/392&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/392&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/d4by69/hyZPZeKWnZ/O4rsosNdkQPKLu7nkhcKwK/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/g5RJt/hyZPywhJNj/CNrk81VYlQWFfdQnPiYX90/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/vc6m7/hyZPNllCCn/kjcJSZzkmA74WIoa8JsoK1/img.png?width=4342&amp;amp;height=2456&amp;amp;face=0_0_4342_2456');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;공학설계 | 기본설계(1): 시제품 레이아웃과 공학해석&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 공학설계 2. 제품기획 2.1. 요구사항목록 3. 개념설계 3.1. 설계문제와 기능구조도 3.2. 동작원리와 설계대안 4. 기본설계 4.1. 시제품 레이아웃과 공학해석 4.2. 견실최적설계 4.2.1. 문제 정의 4.2.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;- 김종원. (2008). 공학설계: 창의적 신제품 개발방법론. 문운당.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Engineering Design</category>
      <category>공학</category>
      <category>공학설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/325</guid>
      <comments>https://vedacube.tistory.com/325#entry325comment</comments>
      <pubDate>Fri, 5 Sep 2025 18:00:01 +0900</pubDate>
    </item>
    <item>
      <title>공학설계 | 개념설계(1): 설계문제와 기능구조도</title>
      <link>https://vedacube.tistory.com/391</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/386&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 공학설계&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 제품기획&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/390&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 요구사항목록&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 개념설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/391&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 설계문제와 기능구조도 ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/325&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. 동작원리와 설계대안&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 기본설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/392&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. 시제품 레이아웃과 공학해석&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/404&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2. 견실최적설계&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/409&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.1. 문제 정의&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/410&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.2. 제1차 실험 설계 및 수행&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/411&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.3. 민감도 분석&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 상세설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/393&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 제작도면과 자재소요서&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 개념설계&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Engineering Design.png&quot; data-origin-width=&quot;3589&quot; data-origin-height=&quot;1703&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bnzEau/btsOSdoRHHF/vdSfWB1wcmM0pUb9WpK1Tk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bnzEau/btsOSdoRHHF/vdSfWB1wcmM0pUb9WpK1Tk/img.png&quot; data-alt=&quot;개념설계&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bnzEau/btsOSdoRHHF/vdSfWB1wcmM0pUb9WpK1Tk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbnzEau%2FbtsOSdoRHHF%2FvdSfWB1wcmM0pUb9WpK1Tk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;580&quot; height=&quot;275&quot; data-filename=&quot;Engineering Design.png&quot; data-origin-width=&quot;3589&quot; data-origin-height=&quot;1703&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;개념설계&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;제품 기획 단계에서 요구사항목록을 완성했다면 본격적으로 설계 구성원들이 모여 개념설계를 시작한다. 개념설계 단계에서는 &lt;b&gt;설계대안을 최대한 많이 창안하고 가장 유망한 설계대안을 선정하는 것을&amp;nbsp;목표&lt;/b&gt;로 하며, 이를 위해 설계문제를 최소 기능 단위로 분해하여 체계적으로 접근한다. 개념설계는 요구사항목록을 기반으로 다음과 같은 절차를 밟는다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;●&amp;nbsp; 설계문제 추출&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;&lt;b&gt;●&lt;/b&gt;&amp;nbsp; &lt;b&gt;기능구조도 작성&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;&lt;b&gt;●&lt;/b&gt;&amp;nbsp; 세부기능에 대한 &lt;b&gt;동작원리 탐색&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;&lt;b&gt;●&lt;/b&gt;&amp;nbsp; 동작원리의 조합을 이용한 &lt;b&gt;설계대안 창안&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;&lt;b&gt;●&lt;/b&gt;&amp;nbsp; &lt;b&gt;설계대안 비교 분석&lt;/b&gt;&lt;br /&gt;&lt;b&gt;●&lt;/b&gt; &amp;nbsp;&lt;b&gt;최적 설계대안 선정&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 설계문제 추출&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;3821&quot; data-origin-height=&quot;1598&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b1T7Ue/btsOsWATOk0/MsXi1rAwsWKGf0Wb5LGGBK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b1T7Ue/btsOsWATOk0/MsXi1rAwsWKGf0Wb5LGGBK/img.png&quot; data-alt=&quot;설계문제 추출&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b1T7Ue/btsOsWATOk0/MsXi1rAwsWKGf0Wb5LGGBK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb1T7Ue%2FbtsOsWATOk0%2FMsXi1rAwsWKGf0Wb5LGGBK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;585&quot; height=&quot;245&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;3821&quot; data-origin-height=&quot;1598&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;설계문제 추출&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;앞서 작성한 요구사항목록으로부터 설계하고자 하는 시스템이 어떤 기능을 하는지 설명하는 설계문제를 한 두 문장으로 추출한다. 이를 위해 요구기능 및 제한조건에서 아래와 같이 가장 핵심적인 사항들만 남기고 나머지는 삭제한다. 따라서 M이 아닌 O로 표기된 항목은 삭제한다.&lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt; &lt;span style=&quot;font-family: 'Noto Sans Light'; background-color: #fcfcfc; text-align: left;&quot;&gt;●&amp;nbsp; 본 시스템은 사용자가 물체를 배치하면 자동으로 장착 또는 고정할 수 있어야 한다.&lt;/span&gt; &lt;br /&gt;●&amp;nbsp; 본 시스템은 시스템에 장착된 물체의 위치를 XY 평면에 대하여 바꿀 수 있어야 한다.&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; background-color: #fcfcfc; text-align: left;&quot;&gt;●&amp;nbsp; 본 시스템은 물체를 자동으로 탈착할 수 있어야 한다.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;●&amp;nbsp; 변위: XY 5.0 mm (중심선을 기준으로 &amp;plusmn;2.5 mm)&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;●&amp;nbsp; 분해능: XY 0.1 mm 이하&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;●&amp;nbsp; 속도: XY 15 mm/s 이상&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;●&amp;nbsp; 가속도: XY 200.0 mm/s&lt;sup&gt;2&lt;/sup&gt; 이상&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;●&amp;nbsp; 힘 용량: 7.0 N 이상&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;●&amp;nbsp; 무게: 20.0 N (2.0kg)이하&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;●&amp;nbsp; 전기에너지: AC 220V&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;●&amp;nbsp; 공압에너지: 0.8 MPa 이하&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;●&amp;nbsp; 본 시스템은 사용자로부터 조작 신호를 받을 수 있어야 한다.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;●&amp;nbsp; 본 시스템은 사용자에게 상태 표시를 할 수 있어야 한다.&lt;/span&gt;&lt;/blockquote&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;정량적인 요구사항은 시스템의 기능과 제한조건을 설명하는 정성적인 문장으로 바꾼다.&lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;span style=&quot;font-family: 'Noto Sans Light'; background-color: #fcfcfc; text-align: left;&quot;&gt;●&amp;nbsp; 본 시스템은 사용자가 물체를 배치하면 자동으로 장착 또는 고정할 수 있어야 한다.&lt;/span&gt; &lt;br /&gt;●&amp;nbsp; 본 시스템은 시스템에 장착된 물체의 위치를 XY 평면에 대하여 정밀하게 바꿀 수 있어야 한다.&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; background-color: #fcfcfc; text-align: left;&quot;&gt;●&amp;nbsp; 본 시스템은 물체를 자동으로 탈착할 수 있어야 한다.&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;br /&gt;●&amp;nbsp; 본 시스템은 전기에너지 또는 공압에너지를 활용할 수 있다.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;●&amp;nbsp; 본 시스템은 사용자로부터 조작 신호를 받을 수 있어야 한다.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;●&amp;nbsp; 본 시스템은 사용자에게 상태 표시를 할 수 있어야 한다.&lt;/span&gt;&lt;/blockquote&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;이제 남아있는 문장들을 결합하고 한 두 문장으로 단순화하여 설계문제를 추출한다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;본 시스템은 사용자가 물체를 배치하면 사용자로부터 조작 신호를 받아 전기에너지 또는 공압에너지를 활용하여 자동으로 물체를 장착하고 그 위치를 XY 평면에 대하여 정밀하게 바꾼다. 시스템으로부터 물체를 자동으로 탈착한 뒤 사용자에게 상태 표시를 한다.&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;요구사항목록을 작성할 때와 마찬가지로, 설계문제를 추출하는 과정에서 설계대안을 암시하는 문장이 포함되지 않도록 유의한다. &lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;해당 설계문제와 관련된&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;경험과 지식이 있더라도&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;설계문제에 포함되지&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;않도록 하여 새로운 설계대안을 생각할 수 있는 가능성을 열어두어야 한다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3. 기능구조도 작성&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;설계문제를 기반으로, &lt;b&gt;시스템이 어떠한 입력을 받았을 때 어떠한 동작을 수행하여 어떠한 출력을 발생시키는지를 정의&lt;/b&gt;한다. 시스템을 구성하는 각 동작은 각 동작은 직사각형 모양의&amp;nbsp;기능블록 내에 기록한다. 이때&amp;nbsp;입력과 출력은 에너지, 재료, 신호로 구성되며, 입력을 시작으로 각 기능블록을 통과하여 출력까지 이어진다. 편의를 위해 에너지의 흐름은 가는 실선으로, 재료는 굵은 실선으로, 신호는 점선으로 구분한다. 이와 같은 방식으로 시스템의 단계별 기능을 표현한 도식을 &lt;b&gt;기능구조도&lt;/b&gt;라고 한다. 기능구조도는 ▲전체 기능구조도와 &lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;▲&lt;/span&gt;세부 기능구조도로 구성된다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;3.1. 전체 기능구도조&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;4285&quot; data-origin-height=&quot;1135&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Y73HE/btsOrl3sRZj/iBrf3zm9vrZj9Z3oFIOwkk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Y73HE/btsOrl3sRZj/iBrf3zm9vrZj9Z3oFIOwkk/img.png&quot; data-alt=&quot;전체 기능구조도&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Y73HE/btsOrl3sRZj/iBrf3zm9vrZj9Z3oFIOwkk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FY73HE%2FbtsOrl3sRZj%2FiBrf3zm9vrZj9Z3oFIOwkk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;736&quot; height=&quot;195&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;4285&quot; data-origin-height=&quot;1135&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;전체 기능구조도&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;전체 기능구조도는 &lt;b&gt;시스템에 어떠한 입력이 들어오고 어떠한 출력이 발생하는지를 도식화&lt;/b&gt;한 것이다. 설계문제를 기반으로 해당 기능을 수행하기 위해 필요한 입력이 무엇인지, &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;이 기능이 수행되었을 때 어떠한 출력이 발생할 것인지 생각하여 정리한다.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;그리고&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;하나의 기능블록을 기준으로 왼쪽에는 입력 요소를, 오른쪽에는 출력 요소를 배치한다. &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;기능블록 내부에는 앞서 추출하였던 설계문제를 작성한다. 이로써 해당 시스템이 어떻게 동작하는지 도식으로 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;한눈에 볼 수 있게 되었다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;3.2. 세부 기능구조도&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;5537&quot; data-origin-height=&quot;1329&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/eJK7Xo/btsOqRBcxU5/c3wMIo68e2C48tyNwaThM0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/eJK7Xo/btsOqRBcxU5/c3wMIo68e2C48tyNwaThM0/img.png&quot; data-alt=&quot;세부 기능구조도&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/eJK7Xo/btsOqRBcxU5/c3wMIo68e2C48tyNwaThM0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FeJK7Xo%2FbtsOqRBcxU5%2Fc3wMIo68e2C48tyNwaThM0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;856&quot; height=&quot;205&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;5537&quot; data-origin-height=&quot;1329&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;세부 기능구조도&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;설계문제를 체계적으로 다루기 위해 &lt;b&gt;전체 기능구조도에 있던 하나의 기능블록을 여러 개의 세부 기능블록으로 분해&lt;/b&gt;한다. &lt;span style=&quot;letter-spacing: 0px;&quot;&gt;전체 기능블록을 점선으로 나타내고, 그 내부에 &lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;세부 기능블록을 배치한다. &lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;세부 기능블록은 더 이상 나눌 수 없는 하나의 독립적인 기능을 담당하며, 각 기능블록마다 어떠한 입력을 받고 어떠한 출력을 발생시키는지 화살표로 나타낸다. &lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;이때 세부 기능블록이 받는 입력은 해당 기능이 수행되기 위한 전제조건으로, 입력 중에 하나라도 없다면 그 기능은 수행되지 않는다. &lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;오히려 세부 기능블록이 너무 많으면 설계 과정이 복잡해질 수 있으므로, &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;몇몇 세부 기능은 하나의 세부 기능으로 합쳐 취급할 수도 있다. &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;세부 기능구조도는 설계대안을 효율적으로 찾기 위한 것이므로 세부 기능을 얼마나 자세하게 전개할지 결정하는 것은 설계 구성원들의 판단에 달려있다. &lt;b&gt;한 시스템에 대해서 세부 기능은 10개 이하로 유지하는 것을 추천&lt;/b&gt;한다. &lt;/span&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;이로써 전체&amp;nbsp;구조도를 세부 기능구조도로 전개하였다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;[함께 읽으면 좋은 페이지]&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1766056301579&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;공학설계 | 개념설계(2): 동작원리와 설계대안&quot; data-og-description=&quot;1. 공학설계 2. 제품기획 2.1. 요구사항목록 3. 개념설계 3.1. 설계문제와 기능구조도 3.2. 동작원리와 설계대안 4. 기본설계 4.1. 시제품 레이아웃과 공학해석 4.2. 견실최적설계 4.2.1. 문제 정의 4.2.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/325&quot; data-og-url=&quot;https://vedacube.tistory.com/325&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/dccSsI/hyZPM7NXU5/OzVHkENnNMLWZivkNONINk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/zV0iu/hyZPz23f5i/aLKEfHEcKM6WKge2GY0qNk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/Ngayd/hyZP1XWhnv/qx9z2Dh94ukPLtYk68EQ70/img.png?width=4342&amp;amp;height=3503&amp;amp;face=0_0_4342_3503&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/325&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/325&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/dccSsI/hyZPM7NXU5/OzVHkENnNMLWZivkNONINk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/zV0iu/hyZPz23f5i/aLKEfHEcKM6WKge2GY0qNk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/Ngayd/hyZP1XWhnv/qx9z2Dh94ukPLtYk68EQ70/img.png?width=4342&amp;amp;height=3503&amp;amp;face=0_0_4342_3503');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;공학설계 | 개념설계(2): 동작원리와 설계대안&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 공학설계 2. 제품기획 2.1. 요구사항목록 3. 개념설계 3.1. 설계문제와 기능구조도 3.2. 동작원리와 설계대안 4. 기본설계 4.1. 시제품 레이아웃과 공학해석 4.2. 견실최적설계 4.2.1. 문제 정의 4.2.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;- 김종원. (2008). 공학설계: 창의적 신제품 개발방법론. 문운당.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Engineering/Engineering Design</category>
      <category>공학</category>
      <category>공학설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/391</guid>
      <comments>https://vedacube.tistory.com/391#entry391comment</comments>
      <pubDate>Fri, 29 Aug 2025 18:00:44 +0900</pubDate>
    </item>
    <item>
      <title>최적설계 | 제약조건 문제 수치해법(3): 순차 이차계획법 SQP</title>
      <link>https://vedacube.tistory.com/80</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;1. 최적설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/336&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 설계문제 정식화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/352&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.2. 제약조건의 정규화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/338&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2. 최적성 조건&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/339&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/340&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2. 부등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/341&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3. KKT 최적성 조건&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/346&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 대안 형식과 이계 필요조건&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/317&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3. 선형계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/348&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 심플렉스법&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/354&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1.1. 인위변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/353&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. scipy.optimize.linprog&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/320&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4. 이차계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/103&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. qpsolvers.solve_qp&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 비제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/166&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 최속강하법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/109&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 공액경사법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/122&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 구간감소법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/123&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. 설계문제의 선형화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/130&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.2. 순차 선형계획법 SLP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/80&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.3. 순차 이차계획법 SQP ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/396&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.4. 부정확 이동거리 탐색법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/321&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.5. 제약최속강하법 CSD&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 자연 영감 탐색법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/397&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 유전 알고리즘 GA&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/405&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1.1. pygad.GA&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/398&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. 미분 진화 알고리즘 DE&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/156&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2.1. scipy.optimize.differential_evolution&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 다목적 최적설계 문제&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/144&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 파레토 최적점&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/431&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 가중치 합 방법&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/213&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 비지배 정렬 유전 알고리즘 NSGA-II&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/212&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3.1. pymoo.alghrithms.moo.nsga2.NSGA2&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 순차 이차계획법&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;앞서 다룬 순차 선형계획법은 일반적인 제약조건 최적화 문제를 풀이를 위한 단순하고 직관적인 알고리즘이지만,&amp;nbsp; 상황에 따라 정확한 최적해에 수렴하지 않는 등 강건성이 부족하다는 단점이 있다. 반면에 순차 이차계획법(Sequantial Quadratic Programming, SQP)은 강건성을 갖춘 결과를 보여 비교적 널리 사용되고 있다. 해당 알고리즘은 &lt;b&gt;▲탐색방향을 결정하는 문제&lt;/b&gt;와 &lt;b&gt;▲이동거리를 결정하는 문제&lt;/b&gt;를 포함함다.&lt;/span&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 탐색방향 결정&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;순차 이차계획법에서 탐색방향을 결정하는 문제는 비선형 목적함수와 제약조건 함수에 대해서 선형화된 근사를 사용한다. 아래와 같이 &lt;b&gt;선형화된 목적함수에 탐색방향 이계항을 더하여 목적함수와 탐색방향의 길이를 최소화하는 이차계획문제&lt;/b&gt;로 만든다. 해당 이차계획문제는 복록하므로 최소값이 존재한다면 전역적으로 유일하다. 아래 링크로 접속하면 비선형&amp;middot;제약조건 최적설계문제를 선형화하는 방법에 대해 확인할 수 있다.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1747395445104&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{minimize}~~~~&amp;amp;\overline{f} = \mathbf{c}^T \mathbf{d} + \frac{1}{2}\mathbf{d}^T \mathbf{d} \\\\
\mathrm{subject~to}~~~~&amp;amp;\mathbf{N}^T\mathbf{d} = \mathbf{e} \\\\
&amp;amp;\mathbf{A}^T\mathbf{d} \leq \mathbf{b}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{minimize}~~~~&amp;amp;\overline{f} = \mathbf{c}^T \mathbf{d} + \frac{1}{2}\mathbf{d}^T \mathbf{d} \\\\ \mathrm{subject~to}~~~~&amp;amp;\mathbf{N}^T\mathbf{d} = \mathbf{e} \\\\ &amp;amp;\mathbf{A}^T\mathbf{d} \leq \mathbf{b} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1748146625333&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 제약조건 문제 수치해법(1): 설계문제 선형화&quot; data-og-description=&quot;1. 설계문제 선형화 비선형&amp;middot;제약조건 최적설계문제를 수치적으로 풀이하는 것 또한 탐색방향과 이동거리를 결정한다. 그러나 제약조건을 고려하여 탐색방향과 이동거리를 결정해야 하기 때문&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/123&quot; data-og-url=&quot;https://vedacube.tistory.com/123&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/e0Wtj/hyY0umjLxh/VS2JkhieDdiaPJtsdzTGe1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/HMS1K/hyYYwyWwJU/b6lVuHxnqhEzFLg7AKkEK1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/e3a1L/hyY0pFjw1D/jHNKbyWylgZkMxAvcWa8I0/img.png?width=1968&amp;amp;height=1914&amp;amp;face=0_0_1968_1914&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/123&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/123&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/e0Wtj/hyY0umjLxh/VS2JkhieDdiaPJtsdzTGe1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/HMS1K/hyYYwyWwJU/b6lVuHxnqhEzFLg7AKkEK1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/e3a1L/hyY0pFjw1D/jHNKbyWylgZkMxAvcWa8I0/img.png?width=1968&amp;amp;height=1914&amp;amp;face=0_0_1968_1914');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 제약조건 문제 수치해법(1): 설계문제 선형화&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 설계문제 선형화 비선형&amp;middot;제약조건 최적설계문제를 수치적으로 풀이하는 것 또한 탐색방향과 이동거리를 결정한다. 그러나 제약조건을 고려하여 탐색방향과 이동거리를 결정해야 하기 때문&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3. 강하함수 계산&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;순차 이차계획법에서는 이동거리를 결정하기 위해 목적함수 대신 강하함수를 정의하여 이를 최소화한다. 탐색방향과 설계점이 결정된 상태에서의 강하함수는 이동거리에 대한 일변수 함수이므로 구간감소법을 이용해 이동거리를 결정한다.&lt;/span&gt; 비제약조건 문제에서는 수렴 상태를 확인하기 위해 목적함수가 강하함수로서 사용되었다. 하지만 제약조건 문제에서는 &lt;b&gt;목적함수에 제약조건 위배에 대한 벌칙을 반영한 강하함수&lt;/b&gt;를 정의하여 이를 기반으로 수렴 상태를 확인한다. 쉐니크니 강하함수(Pshenichny's descent function)는 최적화 공학 문제에 일반적으로 사용되는 함수이며, 임의의 점에서 쉐니크니 강하함수는 아래와 같이 정의된다. &lt;i&gt;f&lt;/i&gt;(&lt;i&gt;x&lt;sub&gt;k&lt;/sub&gt;&lt;/i&gt;)는 설계점 &lt;i&gt;x&lt;sub&gt;k&lt;/sub&gt;&lt;/i&gt;에서의 목적함수 값이고, 벌칙인자 &lt;i&gt;R&lt;/i&gt;은 순차 이차계획법 시작 시 사용자가 지정하는 양수이며, &lt;i&gt;V&lt;/i&gt;(&lt;i&gt;x&lt;sub&gt;k&lt;/sub&gt;&lt;/i&gt;)는 이차계획문제를 이루는 모든 제약조건 중 최대 제약조건 위배량이다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1747975236961&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\Phi \left( \mathbf{x}^{\left(k\right)} \right) = f \left( \mathbf{x}^{\left(k\right)} \right) + RV \left( \mathbf{x}^{\left(k\right)} \right)
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \Phi \left( \mathbf{x}^{\left(k\right)} \right) = f \left( \mathbf{x}^{\left(k\right)} \right) + RV \left( \mathbf{x}^{\left(k\right)} \right) \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;벌칙인자는 최적화 반복 과정 중에 새롭게 갱신될 수 있는데, 매 단계에서 벌칙인자가 모든 라그랑지 승수의 합과 크거나 같은지 확인해야 한다. 이는 알고리즘이 수렴하기 위한 필요조건이며, 다음과 같이 나타낼 수 있다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1747992618820&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
R \geq r_k
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} R \geq r_k \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;위 식에서 &lt;i&gt;r&lt;sub&gt;k&lt;/sub&gt;&lt;/i&gt;는 k번째 단계에서 이차계획문제의 모든 라그랑지 승수의 합이다. 등호제약조건의 라그랑지 승수는 부호에 제약이 없으므로 절대값을 사용한다. 반면에 부등호제약조건의 라그랑지 승수는 음수가 아니어야 한다는 것을 기억하자.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1747992760864&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
r_k = \sum_{i=1}^{p} \left | v_i^{\left(k\right)}\right | + \sum_{i=1}^{m} u_i^{\left(k\right)}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} r_k = \sum_{i=1}^{p} \left | v_i^{\left(k\right)}\right | + \sum_{i=1}^{m} u_i^{\left(k\right)} \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp; &amp;nbsp;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;i&gt;R&lt;sub&gt;k&lt;/sub&gt;&lt;/i&gt;가 k번째 단계에서의 벌칙인자 값이라면, 순차 이차계획법 알고리즘이 수렴하기 위한 필요조건은 벌칙인자를 다음과 같이 선택하면 만족한다. 벌칙함수는 탐색방향 결정 단계에서 계산되며, &lt;b&gt;탐색방향이 결정된 상태인 이동거리 결정 단계에서는 그 값이 고정된다.&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1747992891208&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
R=\mathrm{max} \left( R_k,~r_k\right)
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} R=\mathrm{max} \left( R_k,~r_k\right) \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;k번째 단계에서 최대 제약조건 위배량 인자 &lt;i&gt;V&lt;sub&gt;k&lt;/sub&gt;&lt;/i&gt;는 벌칙인자와 마찬가지로 음수가 아니어야 하며, 해당 단계의 설계점에서 제약조건 함수값을 이용해 아래와 같이 결정된다. 등호제약조건은 0이 아니면 위배된 것이기 때문에 절대값을 사용하였다. 만약 모든 제약조건이 해당 설계점에서 만족되면 최대 제약조건 위배량 인자는 0이 된다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1747993023287&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
V\left( \mathbf{x}^{\left(k\right)} \right) = \mathrm{max} \left\{ 0;~~\left|h_1\left( \mathbf{x}^{\left(k\right)} \right)\right|,\left|h_2\left( \mathbf{x}^{\left(k\right)} \right)\right|,\cdots,\left|h_p\left( \mathbf{x}^{\left(k\right)} \right)\right|;~~g_1\left( \mathbf{x}^{\left(k\right)} \right),g_2\left( \mathbf{x}^{\left(k\right)} \right),\cdots,g_m\left( \mathbf{x}^{\left(k\right)} \right) \right\}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} V\left( \mathbf{x}^{\left(k\right)} \right) = \mathrm{max} \left\{ 0;~~\left|h_1\left( \mathbf{x}^{\left(k\right)} \right)\right|,\left|h_2\left( \mathbf{x}^{\left(k\right)} \right)\right|,\cdots,\left|h_p\left( \mathbf{x}^{\left(k\right)} \right)\right|;~~g_1\left( \mathbf{x}^{\left(k\right)} \right),g_2\left( \mathbf{x}^{\left(k\right)} \right),\cdots,g_m\left( \mathbf{x}^{\left(k\right)} \right) \right\} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;4. 이동거리 결정&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;탐색방향과 현재 설계점이 결정되면 갱신되는 설계는 다음과 같이 이동거리에 대한 일변수 함수가 된다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1747994415141&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathbf{x}^{\left(k+1\right)}=\mathbf{x}^{\left(k\right)}+\alpha\mathbf{d}^{\left(k\right)}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{x}^{\left(k+1\right)}=\mathbf{x}^{\left(k\right)}+\alpha\mathbf{d}^{\left(k\right)} \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;강하함수에 갱신된 설계를 대입하면 강하함수 또한 이동거리에 대한 일변수 함수가 된다. 이동거리는 아래와 같은 강하함수를 최소화하는 문제를 풀이함으로써 결정된다. 이동거리 결정을 위한 풀이 방법으로는 구간감소법이 있으나, 대부분의 알고리즘에서는 부정확 이동거리 탐색법을 채택하고 있다. 아래 링크로 접속하면 이동거리를 결정하기 위한 구간감소법과 부정확 이동거리 탐색법을 확인할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1747994500060&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\Phi \left(\alpha\right) = \Phi \left(\mathbf{x}^{\left(k\right)}+\alpha\mathbf{d}^{\left(k\right)}\right)
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \Phi \left(\alpha\right) = \Phi \left(\mathbf{x}^{\left(k\right)}+\alpha\mathbf{d}^{\left(k\right)}\right) \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1748053805248&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 비제약조건 문제 수치해법(3): 구간감소법&quot; data-og-description=&quot;1. 구간감소법 목적함수가 간단하면 최적성의 필요조건과 충분조건을 고려하여 이동거리를 해석적으로 결정할 수 있다. 그러나 대부분의 문제는 목적함수가 간단하지 않기 때문에 해석적 풀이&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/122&quot; data-og-url=&quot;https://vedacube.tistory.com/122&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/ja8Oz/hyYYHfRlkD/C9OGZYiVlmQdscmN7XqLqk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/8KDC7/hyYW0fVTON/UFfnKKArnzZIInOqheDhG1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/CTn1J/hyY0saOHXi/ozoxlTkKq7Q6LLVQcznFO0/img.png?width=4088&amp;amp;height=1538&amp;amp;face=0_0_4088_1538&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/122&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/122&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/ja8Oz/hyYYHfRlkD/C9OGZYiVlmQdscmN7XqLqk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/8KDC7/hyYW0fVTON/UFfnKKArnzZIInOqheDhG1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/CTn1J/hyY0saOHXi/ozoxlTkKq7Q6LLVQcznFO0/img.png?width=4088&amp;amp;height=1538&amp;amp;face=0_0_4088_1538');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 비제약조건 문제 수치해법(3): 구간감소법&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 구간감소법 목적함수가 간단하면 최적성의 필요조건과 충분조건을 고려하여 이동거리를 해석적으로 결정할 수 있다. 그러나 대부분의 문제는 목적함수가 간단하지 않기 때문에 해석적 풀이&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1758892105473&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 제약조건 문제 수치해법(4): 부정확 이동거리 탐색법&quot; data-og-description=&quot;1. 부정확 이동거리 탐색법 앞서 다룬 황금분할 탐색법은 구간감소법 중에서는 좋은 성능을 보이지만, 여전히 많은 함수값 계산을 요구하기 때문에 실제 공학 응용문제에서는 비효율적이다. 따&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/396&quot; data-og-url=&quot;https://vedacube.tistory.com/396&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bf3gwB/hyZKewjwSU/bDoBHldAr6KIyU1AOPKPb1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/NzzU8/hyZJZtaw4E/KgqQpW7BRVJLa0X3efMl70/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/396&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/396&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bf3gwB/hyZKewjwSU/bDoBHldAr6KIyU1AOPKPb1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/NzzU8/hyZJZtaw4E/KgqQpW7BRVJLa0X3efMl70/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 제약조건 문제 수치해법(4): 부정확 이동거리 탐색법&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 부정확 이동거리 탐색법 앞서 다룬 황금분할 탐색법은 구간감소법 중에서는 좋은 성능을 보이지만, 여전히 많은 함수값 계산을 요구하기 때문에 실제 공학 응용문제에서는 비효율적이다. 따&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;5. 예제&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;다음 비선형&amp;middot;제약조건 문제에 대해서 순차 이차계획문제를 적용하기 위해 초기 설계점 (40, 0.5)에서 이차계획문제를 생성해보자. 그 다음 해당 설계점에서의 탐색방향과, 이동거리에 대한 일변수 함수인 강하함수를 정의해보자. 이때 벌칙인자의 초기값은 1로 선정한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748078795691&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{minimize}~~~~&amp;amp;f = x_1^2 + 320x_1x_2 \\\\
\mathrm{subject~to}~~~~
&amp;amp;g_1 = \frac{1}{100}\left( x_1 - 60x_2\right) \leq 0 \\\\
&amp;amp;g_2 = 1 - \frac{x_1\left(x_1-x_2\right)}{3600} \leq 0 \\\\
&amp;amp;g_3 = -x_1 \leq 0 \\\\
&amp;amp;g_4 = -x_2 \leq 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{minimize}~~~~&amp;amp;f = x_1^2 + 320x_1x_2 \\\\ \mathrm{subject~to}~~~~ &amp;amp;g_1 = \frac{1}{100}\left( x_1 - 60x_2\right) \leq 0 \\\\ &amp;amp;g_2 = 1 - \frac{x_1\left(x_1-x_2\right)}{3600} \leq 0 \\\\ &amp;amp;g_3 = -x_1 \leq 0 \\\\ &amp;amp;g_4 = -x_2 \leq 0 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;5.1. 탐색방향 결정&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;탐색방향을 결정하기 위해 위 문제를 초기 설계점에서 선형화한 뒤 탐색방향의 길이를 최소화하기 위한 이차항을 더하면 다음과 같은 이차계획문제를 얻을 수 있다. 목적함수에서 상수는 최적해에 영향을 미치지 않으므로 생략하였다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748147344373&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{minimize}~~~~&amp;amp;\overline{f} = 240d_1 + 12800d_2 + 0.5\left(d_1^2+d_2^2\right) \\\\
\mathrm{subject~to}~~~~
&amp;amp;\overline{g}_1 = 0.01d_1 -0.6d_2+0.1 \leq 0 \\\\
&amp;amp;\overline{g}_2 = -0.022d_1 +0.011d_2 +0.561 \leq 0 \\\\
&amp;amp;\overline{g}_3 = -d_1-40 \leq 0 \\\\
&amp;amp;\overline{g}_4 = -d_2-0.5 \leq 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{minimize}~~~~&amp;amp;\overline{f} = 240d_1 + 12800d_2 + 0.5\left(d_1^2+d_2^2\right) \\\\ \mathrm{subject~to}~~~~ &amp;amp;\overline{g}_1 = 0.01d_1 -0.6d_2+0.1 \leq 0 \\\\ &amp;amp;\overline{g}_2 = -0.022d_1 +0.011d_2 +0.561 \leq 0 \\\\ &amp;amp;\overline{g}_3 = -d_1-40 \leq 0 \\\\ &amp;amp;\overline{g}_4 = -d_2-0.5 \leq 0 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;위 이차계획문제를 행렬식으로 나타내면 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748175921431&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{minimize}~~~~&amp;amp;\overline{f} = \frac{1}{2} \mathbf{d}^T \mathbf{P} \mathbf{d} + \mathbf{q}^T \mathbf{d} \\\\
\mathrm{subject~to}~~~~
&amp;amp;\mathbf{G} \mathbf{d} \leq \mathbf{h}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{minimize}~~~~&amp;amp;\overline{f} = \frac{1}{2} \mathbf{d}^T \mathbf{P} \mathbf{d} + \mathbf{q}^T \mathbf{d} \\\\ \mathrm{subject~to}~~~~ &amp;amp;\mathbf{G} \mathbf{d} \leq \mathbf{h} \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748175927159&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
&amp;amp;\mathbf{P} = 
\begin{bmatrix}
1 &amp;amp; 0 \\
0 &amp;amp; 1 \\
\end{bmatrix},~~~~
\mathbf{q} = 
\begin{bmatrix} 
240 \\
12800 \\
\end{bmatrix}\\\\

&amp;amp;\mathbf{G} = 
\begin{bmatrix}
0.01 &amp;amp; -0.6 \\
-0.022 &amp;amp; 0.011 \\
-1 &amp;amp; 0 \\
0 &amp;amp; -1
\end{bmatrix},~~~~
\mathbf{h} =
\begin{bmatrix} 
-0.1 \\
-0.561 \\
40 \\
0.5
\end{bmatrix}

\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} &amp;amp;\mathbf{P} = \begin{bmatrix} 1 &amp;amp; 0 \\ 0 &amp;amp; 1 \\ \end{bmatrix},~~~~ \mathbf{q} = \begin{bmatrix} 240 \\ 12800 \\ \end{bmatrix}\\\\ &amp;amp;\mathbf{G} = \begin{bmatrix} 0.01 &amp;amp; -0.6 \\ -0.022 &amp;amp; 0.011 \\ -1 &amp;amp; 0 \\ 0 &amp;amp; -1 \end{bmatrix},~~~~ \mathbf{h} = \begin{bmatrix} -0.1 \\ -0.561 \\ 40 \\ 0.5 \end{bmatrix} \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;위 이차계획문제에 qpsolvers.solve_qp 함수를 이용하면 아래와 같은 프로그램을 작성하여 풀이할 수 있으며, 그 결과는 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748177163453&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\therefore~\mathbf{d}^{\left(0\right)} = 
\begin{bmatrix}
25.798 \\
0.597 \\
\end{bmatrix}

\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \therefore~\mathbf{d}^{\left(0\right)} = \begin{bmatrix} 25.798 \\ 0.597 \\ \end{bmatrix} \end{align}$$&lt;/div&gt;
&lt;pre id=&quot;code_1748176147271&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# 라이브러리 추가
import numpy as np
from qpsolvers import solve_qp

# 이차계획문제 가격계수 행렬 및 벡터 정의
P = np.array([[1.0, 0.0], [0.0, 1.0]])
q = np.array([240.0, 12800.0])

# 선형계획문제 부등호제약조건 행렬 정의
G = np.array([[0.01, -0.6], [-0.022, 0.011], [-1.0, 0.0], [0.0, -1.0]])
h = np.array([-0.1, -0.561, 40.0, 0.5])

# 이차계획문제 최적화 알고리즘
x = solve_qp(P, q, G, h, solver=&quot;cvxopt&quot;)

# 이차계획문제 최적 결과 출력
print(x)&lt;/code&gt;&lt;/pre&gt;
&lt;figure id=&quot;og_1765716749038&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 파이썬 기반 이차계획문제 알고리즘 qpsolvers.solve_qp&quot; data-og-description=&quot;1. qpsolvers qpsolvers는 파이썬 기반의 오픈소스 패키지로, 이차계획문제 풀이를 위한 다양한 알고리즘을 제공한다. 파이썬 기반의 연산 패키지인 NumPy와도 호환이 가능해 복잡하게 형식을 정의할 &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/103&quot; data-og-url=&quot;https://vedacube.tistory.com/103&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/b3S09h/hyZPyPnCqx/ZZzkayJwZw5I5iwvjBUe01/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/clxa5A/hyZPcmSEQg/AT4Mtvar6BKglM0PzEa9g1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/f0utQ/hyZPdTAmmj/hMGdDnkA7le8xmuUUMYUTk/img.png?width=1821&amp;amp;height=1854&amp;amp;face=0_0_1821_1854&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/103&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/103&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/b3S09h/hyZPyPnCqx/ZZzkayJwZw5I5iwvjBUe01/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/clxa5A/hyZPcmSEQg/AT4Mtvar6BKglM0PzEa9g1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/f0utQ/hyZPdTAmmj/hMGdDnkA7le8xmuUUMYUTk/img.png?width=1821&amp;amp;height=1854&amp;amp;face=0_0_1821_1854');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 파이썬 기반 이차계획문제 알고리즘 qpsolvers.solve_qp&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. qpsolvers qpsolvers는 파이썬 기반의 오픈소스 패키지로, 이차계획문제 풀이를 위한 다양한 알고리즘을 제공한다. 파이썬 기반의 연산 패키지인 NumPy와도 호환이 가능해 복잡하게 형식을 정의할&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;5.2. 강하함수 계산&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;강하함수를 계산하기 위해 벌칙인자와 최대 제약조건 위배량 인자를 계산한다. 이차계획문제에 대하여 라그랑주 함수를 정의하고 KKT 최적성 조건을 적용하여 나타내면 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748219182312&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}

L~=~&amp;amp;\overline{f} + u_1\overline{g}_1 + u_2\overline{g}_2 + u_3\overline{g}_3 + u_4\overline{g}_4 \\\\
=~&amp;amp;240d_1 + 12800d_2 + 0.5\left(d_1^2 + d_2^2\right) \\\\
&amp;amp;+ u_1\left(0.01d_1-0.6d_2+0.1\right) \\\\
&amp;amp;+ u_2\left(-0.022d_1+0.011d_2+0.561\right) \\\\
&amp;amp;+ u_3\left(-d_1-40\right) \\\\
&amp;amp;+ u_4\left(-d_2-0.5\right)

\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} L~=~&amp;amp;\overline{f} + u_1\overline{g}_1 + u_2\overline{g}_2 + u_3\overline{g}_3 + u_4\overline{g}_4 \\\\ =~&amp;amp;240d_1 + 12800d_2 + 0.5\left(d_1^2 + d_2^2\right) \\\\ &amp;amp;+ u_1\left(0.01d_1-0.6d_2+0.1\right) \\\\ &amp;amp;+ u_2\left(-0.022d_1+0.011d_2+0.561\right) \\\\ &amp;amp;+ u_3\left(-d_1-40\right) \\\\ &amp;amp;+ u_4\left(-d_2-0.5\right) \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748219726617&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}

\frac{\partial L}{\partial d_1} &amp;amp;= 240 + d_1 + 0.01u_1 -0.022u_2-u_3 = 0 \\\\

\frac{\partial L}{\partial d_2} &amp;amp;= 12800 + d_2 -0.6u_1 + 0.011u_2-u_4 = 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \frac{\partial L}{\partial d_1} &amp;amp;= 240 + d_1 + 0.01u_1 -0.022u_2-u_3 = 0 \\\\ \frac{\partial L}{\partial d_2} &amp;amp;= 12800 + d_2 -0.6u_1 + 0.011u_2-u_4 = 0 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;부등호제약조건에 탐색방향 벡터를 대입하였을 때 첫 번째와 두 번째 부등호제약조건은 활성, 세 번째와 네 번째 부등호제약조건은 만족이므로, 세 번째와 네 번째 부등호제약조건의 라그랑주 승수는 0의 값을 갖는다. KKT 최적성 조건에 이를 반영하고 탐색방향 벡터를 대입하면 다음과 같은 이차방정식을 얻을 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748228293002&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}

&amp;amp;0.01u_1-0.022u_2+265.798=0 \\\\
-&amp;amp;0.6u_1+0.011u_2+12800.597=0 \\\\
\\\\
\therefore~~&amp;amp;u_1=21736.968,~~u_2=21962.167

\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} &amp;amp;0.01u_1-0.022u_2+265.798=0 \\\\ -&amp;amp;0.6u_1+0.011u_2+12800.597=0 \\\\ \\\\ \therefore~~&amp;amp;u_1=21736.968,~~u_2=21962.167 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;이로부터 벌칙인자를 갱신하면 다음과 같다. 해당 값은 이동거리 결정 단계에서 고정된다는 것에 유의하자.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748228667775&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
R=\mathrm{max}\left( R_0,~r_0\right)=\mathrm{max}\left( 1,~43699.135\right)=43699.135
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} R=\mathrm{max}\left( R_0,~r_0\right)=\mathrm{max}\left( 1,~43699.135\right)=43699.135 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;마지막으로 제약조건에 초기 설계점을 대입하여 최대 제약조건 위배량 인자를 계산하면 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748229453847&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
V\left(\mathbf{x}^{\left(0\right)}\right) &amp;amp;= \mathrm{max}\left\{ 0;~~g_1\left(\mathbf{x}^{\left(0\right)}\right),g_2\left(\mathbf{x}^{\left(0\right)}\right),g_3\left(\mathbf{x}^{\left(0\right)}\right),g_4\left(\mathbf{x}^{\left(0\right)}\right) \right\} \\\\
&amp;amp;= \mathrm{max}\left\{ 0;~~0.1,0.561,-40,-0.5\right\} \\\\
&amp;amp;= 0.561
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} V\left(\mathbf{x}^{\left(0\right)}\right) &amp;amp;= \mathrm{max}\left\{ 0;~~g_1\left(\mathbf{x}^{\left(0\right)}\right),g_2\left(\mathbf{x}^{\left(0\right)}\right),g_3\left(\mathbf{x}^{\left(0\right)}\right),g_4\left(\mathbf{x}^{\left(0\right)}\right) \right\} \\\\ &amp;amp;= \mathrm{max}\left\{ 0;~~0.1,0.561,-40,-0.5\right\} \\\\ &amp;amp;= 0.561 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;위 연산을 기반으로 해당 단계에서의 강하함수 값을 계산하면 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748231434288&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\Phi \left( \mathbf{x}^{\left(0\right)} \right) &amp;amp;= f \left( \mathbf{x}^{\left(0\right)} \right) + RV \left( \mathbf{x}^{\left(0\right)} \right) \\\\
&amp;amp;= 8000 + 43699.135 \times 0.561 \\\\
&amp;amp;= 32515.215
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \Phi \left( \mathbf{x}^{\left(0\right)} \right) &amp;amp;= f \left( \mathbf{x}^{\left(0\right)} \right) + RV \left( \mathbf{x}^{\left(0\right)} \right) \\\\ &amp;amp;= 8000 + 43699.135 \times 0.561 \\\\ &amp;amp;= 32515.215 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;5.3. 이동거리 결정&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;구간감소법이나 부정확 이동거리 탐색법을 활용해 해당 단계에서 강하함수를 최소화하는 이동거리를 탐색한다. 만약 탐색을 위한 최소 간격을 0.1로 선정하였다면 아래와 같이 설계점을 갱신하여 강하함수의 값을 계산한다. 이때 강하함수의 계산은 앞서 보인 과정과 동일하다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748232244153&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}

\mathbf{x}^{\left(0,1\right)} &amp;amp;= \mathbf{x}^{\left(0\right)} +\alpha_{0,1}\mathbf{d}^{\left(0\right)} \\\\
&amp;amp;= 

\begin{bmatrix}
40 \\
0.5
\end{bmatrix}

+

0.1 \times

\begin{bmatrix}
25.798 \\
0.597
\end{bmatrix}
\\\\

&amp;amp;= 

\begin{bmatrix}
42.580 \\
0.560
\end{bmatrix}

\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{x}^{\left(0,1\right)} &amp;amp;= \mathbf{x}^{\left(0\right)} +\alpha_{0,1}\mathbf{d}^{\left(0\right)} \\\\ &amp;amp;= \begin{bmatrix} 40 \\ 0.5 \end{bmatrix} + 0.1 \times \begin{bmatrix} 25.798 \\ 0.597 \end{bmatrix} \\\\ &amp;amp;= \begin{bmatrix} 42.580 \\ 0.560 \end{bmatrix} \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748232358321&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\Phi \left( \mathbf{x}^{\left(0,1\right)} \right) = f \left( \mathbf{x}^{\left(0,1\right)} \right) + RV \left( \mathbf{x}^{\left(0,1\right)} \right)
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \Phi \left( \mathbf{x}^{\left(0,1\right)} \right) = f \left( \mathbf{x}^{\left(0,1\right)} \right) + RV \left( \mathbf{x}^{\left(0,1\right)} \right) \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;[함께 읽으면 좋은 페이지]&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1751015346181&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 이차계획법&quot; data-og-description=&quot;1. 이차계획법 이차계획법(Quadratic Programming, QP)은 선형계획법과는 다르게 이차목적함수와 선형제약조건을 갖는다. 실제 응용에서도 많이 찾아볼 수 있으며, 일반적인 비선형계획 알고리즘은 매 &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/320&quot; data-og-url=&quot;https://vedacube.tistory.com/320&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/nqLAN/hyZgaOxZpB/FrvdDkiKpKK42kqE50N0D1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cfL7VU/hyZch2RTVW/f5ISCFt2ul7EkvQyTOZPBK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bZXqso/hyZbunGnpW/hJkrHE8pdoLTYGxifKyD10/img.png?width=1821&amp;amp;height=1855&amp;amp;face=0_0_1821_1855&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/320&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/320&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/nqLAN/hyZgaOxZpB/FrvdDkiKpKK42kqE50N0D1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cfL7VU/hyZch2RTVW/f5ISCFt2ul7EkvQyTOZPBK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bZXqso/hyZbunGnpW/hJkrHE8pdoLTYGxifKyD10/img.png?width=1821&amp;amp;height=1855&amp;amp;face=0_0_1821_1855');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 이차계획법&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 이차계획법 이차계획법(Quadratic Programming, QP)은 선형계획법과는 다르게 이차목적함수와 선형제약조건을 갖는다. 실제 응용에서도 많이 찾아볼 수 있으며, 일반적인 비선형계획 알고리즘은 매&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1761920445889&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 제약조건 문제 수치해법(5): 제약최속강하법 CSD&quot; data-og-description=&quot;1. 제약최속강하법 앞서 다루었던 최속강하법에서 탐색방향은 목적함수가 가장 빠르게 감소하는 방향, 즉 목적함수의 경사도 벡터와 반대 방향이었다. 그러나 이전과 다르게 최적 설계문제에 &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/321&quot; data-og-url=&quot;https://vedacube.tistory.com/321&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cnNysi/hyZMYAY25P/PGbAHIxPliQWyKcJPJ54e0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/c1yLcc/hyZMYnrwCI/fw3vAG0FYw3pZU2fCnrwKk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/321&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/321&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cnNysi/hyZMYAY25P/PGbAHIxPliQWyKcJPJ54e0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/c1yLcc/hyZMYnrwCI/fw3vAG0FYw3pZU2fCnrwKk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 제약조건 문제 수치해법(5): 제약최속강하법 CSD&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 제약최속강하법 앞서 다루었던 최속강하법에서 탐색방향은 목적함수가 가장 빠르게 감소하는 방향, 즉 목적함수의 경사도 벡터와 반대 방향이었다. 그러나 이전과 다르게 최적 설계문제에&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;color: #333333;&quot;&gt;- Arora, J. S. (2016).&amp;nbsp;&lt;i&gt;Introduction to optimum design&lt;/i&gt;. Elsevier.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Optimum Design</category>
      <category>공학</category>
      <category>최적설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/80</guid>
      <comments>https://vedacube.tistory.com/80#entry80comment</comments>
      <pubDate>Fri, 22 Aug 2025 18:00:26 +0900</pubDate>
    </item>
    <item>
      <title>파이썬 | 객체 복사: 할당, 얕은 복사, 깊은 복사</title>
      <link>https://vedacube.tistory.com/349</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/358&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 파이썬&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/347&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 기본 기능과 규칙&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 변수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.1. 기본자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #555; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/356&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1.1. 정수형, 실수형, 논리형, 문자열&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.2. 복합자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #555; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/149&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.1. 리스트, 튜플&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #555; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/355&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.2. 딕셔너리, 세트&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.3. 자료형 메소드&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #555; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/359&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 리스트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #555; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/361&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.2. 딕셔너리 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #555; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/362&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.3. 세트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/349&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.4. 객체 복사 ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 조건문과 반복문&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #555; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/328&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. if-elif-else, while, for&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #555; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/234&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. range, enumerate, zip&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #555; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/165&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.3. break, continue&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 예외 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #555; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/295&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. try-except&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 사용자 정의 함수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/145&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. def-return&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/137&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 매개변수와 전달인자&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/323&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 지역변수와 전역변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 모듈, 패키지, 라이브러리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/322&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. impoart-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 파일 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/151&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 메모장 파일 쓰고 읽기&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/402&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. with-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 객체 지향 프로그래밍&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/152&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 클래스와 인스턴스&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/350&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 속성과 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
  &lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/161&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 클래스 상속&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 객체 참조&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3170&quot; data-origin-height=&quot;1519&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/QMgXg/btsN4Q2PByG/lXprvdBWV5IhYKRccDU5v1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/QMgXg/btsN4Q2PByG/lXprvdBWV5IhYKRccDU5v1/img.png&quot; data-alt=&quot;객체 참조&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/QMgXg/btsN4Q2PByG/lXprvdBWV5IhYKRccDU5v1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQMgXg%2FbtsN4Q2PByG%2FlXprvdBWV5IhYKRccDU5v1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;574&quot; height=&quot;275&quot; data-origin-width=&quot;3170&quot; data-origin-height=&quot;1519&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;객체 참조&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;변수는 값 또는 객체를 직접 저장하는 것이 아니라, &lt;b&gt;객체가 저장된 메모리의 주소를 참조&lt;/b&gt;하는데, 이를 객체 참조라고 한다. 객체가 같은 값이어도 해당 객체가 저장된 메모리가 다르다면 변수가 참조하고 있는 메모리 주소 또한 다르므로 서로 다른 객체로 인식한다. 변수가 참조하는 메모리의 주소를 확인하고 싶다면 아래 예시와 같이 id() 함수를 사용하면 된다.&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;a = 7					# 객체 참조
b = 3.141592
c = 'VEDACUBE'
d = 7

print(id(a), id(b), id(c), id(d))	# 변수가 참조하는 메모리의 주소 출력&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;두 변수가 같은 객체를 참조하는지 확인하고 싶다면 &lt;b&gt;항등 연산자&lt;/b&gt;를 사용하면 된다. 항등 연산자는 연산자 양변에 있는 변수들이 동일한 객체를 참조하는지, 즉 동일한 메모리 주소를 참조하는지 참과 거짓으로 판별한다. 아래 예시를 실행해보면 항등 연산자를 통해 첫 번째 변수와 네 번째 변수를 제외하고는 모두 각기 다른 객체를 참조하고 있다는 것을 확인할 수 있다. 이처럼 처음 변수를 선언하여 객체를 할당할 때 동일한 값, 특히 작은 정수나 짧은 문자열을 사용하면 &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;메모리를 절약하기 위해 동일한 객체를 참조하는 경우도 발생하니 참고하자.&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;a = 7			# 객체 참조
b = 3.141592
c = 'VEDACUBE'
d = 7

print(a is b)		# 항등 연산자
print(a is not c)
rpint(b is not c)
print(a is d)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 객체 복사&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;b&gt;한 변수가 참조하고 있는 객체를 다른 변수가 참조하도록 하는 것&lt;/b&gt;을 객체 복사라고 한다. 객체 복사를&amp;nbsp;하는 방법은 크게 &lt;b&gt;▲객체 할당&lt;/b&gt;, &lt;b&gt;▲얕은 복사&lt;/b&gt;, &lt;b&gt;▲깊은 복사&lt;/b&gt;로 구분할 수 있다. 변수를 다루는 과정에서 서로 다른 변수들이 서로에게 영향을 미치지 않으려면 어떤 자료형을 다루느냐에 따라 이에 맞는 객체 복사를 사용해야 한다. 어떤 자료형을 다룰 때 어떤 객체 복사를 이용해야하는지 요약하자면 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;●&amp;nbsp; 단일 자료형을 복사하고 싶다면 &lt;b&gt;객체 할당&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;●&amp;nbsp; 리스트나 딕셔너리를 복사하고 싶다면 &lt;b&gt;얕은 복사&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;●&amp;nbsp; 리스트 안에 리스트, 딕셔너리 안에 딕셔너리가 담긴 중첩자료형이라면 &lt;b&gt;깊은 복사&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2.1. 객체 할당&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2247&quot; data-origin-height=&quot;1397&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bZtjoP/btsN33IK4nU/LjeBa8FD48PQhVfzqvTd8k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bZtjoP/btsN33IK4nU/LjeBa8FD48PQhVfzqvTd8k/img.png&quot; data-alt=&quot;객체 할당&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bZtjoP/btsN33IK4nU/LjeBa8FD48PQhVfzqvTd8k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbZtjoP%2FbtsN33IK4nU%2FLjeBa8FD48PQhVfzqvTd8k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;442&quot; height=&quot;275&quot; data-origin-width=&quot;2247&quot; data-origin-height=&quot;1397&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;객체 할당&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;객체 할당은 &lt;b&gt;할당 연산자를 이용&lt;/b&gt;하여 연산자 우변에 있는 변수가 참조하고 있는 객체를 연산자 좌변에 있는 변수가 참조하도록 한다. 이때 객체 자체를 복사하는 것이 아니라 &lt;b&gt;해당 메모리 주소만 복사하므로 동일한 객체를 참조&lt;/b&gt;하게 된다. 실제로 새로운 객체를 만들지 않고 기존에 있는 객체를 활용하므로 메모리를 효율적으로 활용할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;e = 'VEDACUBE'
f = e	# 객체 할당

print(e, f)
print(id(e), id(f))
print(e is f)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2246&quot; data-origin-height=&quot;1531&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/eetVl4/btsN4Asv7Ew/VHL6UVsx7Y1hS1PrPLknwk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/eetVl4/btsN4Asv7Ew/VHL6UVsx7Y1hS1PrPLknwk/img.png&quot; data-alt=&quot;리스트와 딕셔너리 자료형의 객체 할당&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/eetVl4/btsN4Asv7Ew/VHL6UVsx7Y1hS1PrPLknwk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FeetVl4%2FbtsN4Asv7Ew%2FVHL6UVsx7Y1hS1PrPLknwk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;448&quot; height=&quot;305&quot; data-origin-width=&quot;2246&quot; data-origin-height=&quot;1531&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;리스트와 딕셔너리 자료형의 객체 할당&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;앞선 예시처럼 정수형, 실수형, 문자열 자료형을 객체 할당하는 경우에는 문제가 없지만, &lt;b&gt;리스트나 딕셔너리와 같이 여러 객체를 다루는 자료형을 객체 할당하는 경우&lt;/b&gt;에는 문제가 발생한다. 두 변수 모두 동일한 리스트 혹은 딕셔너리를 참조하기 때문에, 아래 예시처럼 한 변수를 통해서 해당 객체를 수정하면 다른 변수에도 반영된다. 이처럼 리스트나 딕셔너리 자료형에 대해서 객체 할당을 하는 경우에는 의도하지 않은 오류가 발생할 수 있으니 주의할 필요가 있다.&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;g = [7, 3.141592, 'VEDACUBE']
h = [7, 3.141592, 'VEDACUBE']
i = g			# 객체 할당

print(g, h, i, sep='\n')
print(id(g), id(h), id(i))

i[1] = 2.718281		# 객체 수정

print(g, h, i, sep='\n')&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2.2. 얕은 복사&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;4089&quot; data-origin-height=&quot;1516&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/nGvap/btsN5MlzPTv/VdtpAZoU8CPuDg3g4YcsG0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/nGvap/btsN5MlzPTv/VdtpAZoU8CPuDg3g4YcsG0/img.png&quot; data-alt=&quot;얕은 복사&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/nGvap/btsN5MlzPTv/VdtpAZoU8CPuDg3g4YcsG0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnGvap%2FbtsN5MlzPTv%2FVdtpAZoU8CPuDg3g4YcsG0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;822&quot; height=&quot;305&quot; data-origin-width=&quot;4089&quot; data-origin-height=&quot;1516&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;얕은 복사&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;얕은 복사(shallow copy)는&lt;b&gt;&amp;nbsp;한 객체가 포함하고 있는 모든 객체의 메모리 주소를 복사하여 새로운 객체를 생성&lt;/b&gt;한다. 얕은 복사는 사전에 정의된 객체를 참조하여 공유하는 것이 아니라 새로운 객체를 생성한다는 점에서 할당 연산자를 이용한 객체 할당과 다르다. 따라서 얕은 복사를 이용하면 리스트나 딕셔너리와 같이 여러 객체를 다루는 자료형을 복사하더라도&amp;nbsp;새로운 메모리 주소를 갖는 객체를 생성하여 할당하기 때문에&amp;nbsp;객체 할당에서의 문제가 발생하지 않는다. 즉, &lt;b&gt;얕은 복사로 리스트나 딕셔너리를 복사하면 한 변수에서 요소값을 바꾸더라도 다른 변수에 영향을 주지 않는다. &lt;/b&gt;아래 예시는 &lt;b&gt;▲분할&lt;/b&gt;, &lt;b&gt;&lt;span style=&quot;color: #333333;&quot;&gt;▲&lt;/span&gt;메소드&lt;/b&gt;, &lt;b&gt;&lt;span style=&quot;color: #333333;&quot;&gt;▲&lt;/span&gt;형변환&lt;/b&gt;, &lt;b&gt;&lt;span style=&quot;color: #333333;&quot;&gt;▲&lt;/span&gt;함수&lt;/b&gt;를 이용한 얕은 복사를 보여준다.&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;import copy

j = [7, 3.141592, 'VEDACUBE']
k = j[:]		# 분할을 이용한 얕은 복사
l = j.copy()		# 메소드를 이용한 얕은 복사
m = list(j)		# 형변환을 이용한 얕은 복사
n = copy.copy(j)	# 함수를 이용한 얕은 복사

print(j, k, l, m, n, sep='\n')
print()

j[0] = '7'
m[1] = 2.718281

print(j, k, l, m, n, sep='\n')&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;4089&quot; data-origin-height=&quot;2616&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cNOUQ3/btsN48W1623/uWYsk1APXOE10kfKW172wk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cNOUQ3/btsN48W1623/uWYsk1APXOE10kfKW172wk/img.png&quot; data-alt=&quot;중첩자료형의 얕은 복사&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cNOUQ3/btsN48W1623/uWYsk1APXOE10kfKW172wk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcNOUQ3%2FbtsN48W1623%2FuWYsk1APXOE10kfKW172wk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;774&quot; height=&quot;495&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;4089&quot; data-origin-height=&quot;2616&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;중첩자료형의 얕은 복사&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;얕은 복사를 하더라도 &lt;b&gt;리스트 안에 리스트, 딕셔너리 안에 딕셔너리가 있는 중첩자료형라면 객체 할당과 동일한 문제가 발생&lt;/b&gt;한다. 앞서 언급한 바와 같이, 얕은 복사는 새로운 객체를 생성하더라도 원본 객체가 포함하고 있는 객체의 값이 아닌 메모리 주소를 복사한다. 따라서 중첩자료형이 포함하고 있는 리스트나 딕셔너리의 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;메모리 주소를 참조하므로 아래 예시와 같이 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;해당 리스트나 딕셔너리에 접근할 경우 서로 영향을 미친다.&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1747789743643&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;o = [7, ['V', 'E', 'D', 'A', 'C', 'U', 'B', 'E'], 3.141592]
p = o[:]	# 얕은 복사

print(o, p, sep='\n')
print(id(o), id(p))
print(id(o[1]), id(p[1]))

o[1][1] = 'e'	# 중첩자료형 내 객체 수정

print(o, p, sep='\n')&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2.3. 깊은 복사&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;6.png&quot; data-origin-width=&quot;4089&quot; data-origin-height=&quot;2616&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/eLq7Pg/btsN5Msvoyq/aPa10MbjaRIDregz9kQskk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/eLq7Pg/btsN5Msvoyq/aPa10MbjaRIDregz9kQskk/img.png&quot; data-alt=&quot;중첩자료형의 깊은 복사&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/eLq7Pg/btsN5Msvoyq/aPa10MbjaRIDregz9kQskk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FeLq7Pg%2FbtsN5Msvoyq%2FaPa10MbjaRIDregz9kQskk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;774&quot; height=&quot;495&quot; data-filename=&quot;6.png&quot; data-origin-width=&quot;4089&quot; data-origin-height=&quot;2616&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;중첩자료형의 깊은 복사&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;깊은 복사(deep copy)는&lt;/span&gt;&lt;b&gt; 한 객체가 포함하고 있는 모든 객체의 값을 복사하여 새로운 객체를 생성&lt;/b&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;한다. 깊은 복사는 사전에 정의된 객체의 메모리 주소를 복사하는 것이 아니라 값 자체를 복사하여 새로운 메모리에 할당하기 때문에 얕은 복사에서의 문제가 발생하지 않는다. 아래 예시는 복합자료형의 깊은 복사를 하기 위해 copy 모듈을 불러와 deepcopy() 함수를 사용하였다.&lt;/span&gt; 깊은 복사는 모든 객체를 새로 생성하기 때문에 다른 객체 복사보다 많은 메모리를 사용하므로 반드시 필요한 경우에만 사용하기를 권장한다.&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;import copy

q = [7, ['V', 'E', 'D', 'A', 'C', 'U', 'B', 'E'], 3.141592]
r = copy.deepcopy(q)	# 깊은 복사

print(q, r, sep='\n')
print(id(q), id(r))
print(id(q[1]), id(r[1]))

q[1][1] = 'e'	# 중첩자료형 내 객체 수정

print(q, r, sep='\n')&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;[함께 읽으면 좋은 페이지]&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1766058990666&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;파이썬 | 조건문과 반복문(1): if-elif-else, while, for&quot; data-og-description=&quot;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/328&quot; data-og-url=&quot;https://vedacube.tistory.com/328&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/c1Y5xa/hyZONUNNdm/UtnBggIOaYGhnsJ74IkcP0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cEzqSl/hyZOBUmGid/kHJIMl7oIpUf8472YgwNmK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/08rco/hyZPAOpJBD/Gy7RdkUb6NjijRAJeuENnK/img.png?width=4176&amp;amp;height=1890&amp;amp;face=0_0_4176_1890&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/328&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/328&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/c1Y5xa/hyZONUNNdm/UtnBggIOaYGhnsJ74IkcP0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cEzqSl/hyZOBUmGid/kHJIMl7oIpUf8472YgwNmK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/08rco/hyZPAOpJBD/Gy7RdkUb6NjijRAJeuENnK/img.png?width=4176&amp;amp;height=1890&amp;amp;face=0_0_4176_1890');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;파이썬 | 조건문과 반복문(1): if-elif-else, while, for&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt; &lt;b&gt;참고문헌&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #333333; font-family: 'Noto Sans Light';&quot;&gt;- 박진수. (2019). 바로 쓰는 파이썬. 서울대학교출판문화원.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Programming/Python</category>
      <category>파이썬</category>
      <category>프로그래밍</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/349</guid>
      <comments>https://vedacube.tistory.com/349#entry349comment</comments>
      <pubDate>Fri, 15 Aug 2025 18:00:16 +0900</pubDate>
    </item>
    <item>
      <title>공학설계 | 제품 기획: 요구사항목록</title>
      <link>https://vedacube.tistory.com/390</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/386&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 공학설계&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 제품기획&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/390&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 요구사항목록 ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 개념설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/391&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 설계문제와 기능구조도&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/325&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. 동작원리와 설계대안&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 기본설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/392&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. 시제품 레이아웃과 공학해석&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/404&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2. 견실최적설계&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/409&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.1. 문제 정의&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/410&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.2. 제1차 실험 설계 및 수행&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/411&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.3. 민감도 분석&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 상세설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/393&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 제작도면과 자재소요서&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 제품 기획&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Engineering Design.png&quot; data-origin-width=&quot;3114&quot; data-origin-height=&quot;1668&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/mceI1/btsOnen4wNL/FPa21uKJZG4T9Ota03r4q1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/mceI1/btsOnen4wNL/FPa21uKJZG4T9Ota03r4q1/img.png&quot; data-alt=&quot;제품 기획&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/mceI1/btsOnen4wNL/FPa21uKJZG4T9Ota03r4q1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FmceI1%2FbtsOnen4wNL%2FFPa21uKJZG4T9Ota03r4q1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;514&quot; height=&quot;275&quot; data-filename=&quot;Engineering Design.png&quot; data-origin-width=&quot;3114&quot; data-origin-height=&quot;1668&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;제품 기획&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;시스템을 설계하기에 앞서, 시장 조사나 면담을 통해 사용자가 어떤 제품을 원하는지 파악한다. 이때 현재 기술력으로 구현 가능한지에 대한 고민은 후순위로 미루고 사용자가 원하는 기능이 무엇인지 파악하는 데 집중한다. 사용자가 특정 기능을 필요로 할 것이라는 섣부른 가설은 금물이다. &lt;b&gt;제품은 반드시 사용자의 요구사항을 기반으로 기획되어야 한다.&lt;/b&gt; 사용자와 상호작용하면서 어떤 용도로 제품을 사용할 것인지, 어떤 환경에서 제품을 다룰 것인지 등 세부적인 사항을 파악한 뒤 기술 문서로 정리한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 요구사항목록&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;2988&quot; data-origin-height=&quot;1692&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/0MC8M/btsOlXIvPyk/Zz8ocgctGf4cgBUiHVfyTK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/0MC8M/btsOlXIvPyk/Zz8ocgctGf4cgBUiHVfyTK/img.png&quot; data-alt=&quot;요구사항목록&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/0MC8M/btsOlXIvPyk/Zz8ocgctGf4cgBUiHVfyTK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F0MC8M%2FbtsOlXIvPyk%2FZz8ocgctGf4cgBUiHVfyTK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;468&quot; height=&quot;265&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;2988&quot; data-origin-height=&quot;1692&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;요구사항목록&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;요구사항목록은 &lt;b&gt;설계 구성원에게 어떠한 시스템을 개발해야 하는지 상세하게 전달하는 기술 문서&lt;/b&gt;이다. 앞서 시장 조사와 면담을 통해 파악한 요구사항과 제한조건을 요구사항목록으로 작성한다. 이때 &lt;b&gt;설계 구성원이 별도의 설명 없이 요구사항목록만 읽어도 설계해야하는 시스템이 어떤 제한조건 내에서 어떠한 기능을 해야하는지 파악할 수 있게&amp;nbsp;&lt;/b&gt;&lt;b&gt;자세하고 정량적으로 작성하도록 노력한다. &lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;정량적으로 정해진 요구기능이 아니라면 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;제한조건이나 구동 시나리오를 기준으로 요구 기능을 연산하여 최대한 정량적으로 나타낸다. &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;요구사항목록은 개발하고자 하는 시스템의 기능과 제한조건을 빠짐없이 기록하기 위해 항목별로 분류하여 작성한다. 요구사항목록에 추천하는 항목은 아래와 같다. 이외에도 인간공학적 요소나 심미적 사항, 유지보수, 생산과 유통 등을 필요에 따라 추가한다.&lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;●&amp;nbsp; &lt;b&gt;기하학적 형상&lt;/b&gt;&amp;nbsp; |&amp;nbsp; 너비, 깊이, 높이, 형상 제약 등&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;●&amp;nbsp; &lt;b&gt;운동&lt;/b&gt;&amp;nbsp; |&amp;nbsp; 자유도, 변위, 분해능, 속도, 가속도, 제한시간 등&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;●&amp;nbsp; &lt;b&gt;힘&lt;/b&gt;&amp;nbsp; |&amp;nbsp; 자유도, 힘 용량, 무게, 강성 등&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;○&amp;nbsp; &lt;b&gt;에너지원&lt;/b&gt;&amp;nbsp; |&amp;nbsp; AC/DC 전원의 전압과 전류, 유공압 압력과 유량 등&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;○&amp;nbsp; &lt;b&gt;재질&lt;/b&gt;&amp;nbsp; |&amp;nbsp; 사용 가능한 재료의 종류와 특성, 사용하도록 요구되는 재료의 종류와 특성 등&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;○&amp;nbsp; &lt;b&gt;신호&lt;/b&gt;&amp;nbsp; |&amp;nbsp; 입력 신호, 출력 신호, 조작 신호, 상태 표시 종류 및 형식, 요구되는 제어 방식 등&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;○&amp;nbsp; &lt;b&gt;사용환경&lt;/b&gt;&amp;nbsp; |&amp;nbsp; 온도, 습도, 기압, 진동, 노이즈 등&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;○&amp;nbsp; &lt;b&gt;제조원가&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;○&amp;nbsp; &lt;b&gt;일정&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;요구사항목록에서 반드시 충족해야 하는 요구사항이 있는 한편, 상대적으로 중요도가 낮아 반드시 충족할 필요는 없는 요구사항도 있을 것이다. 이를 구분하기 위해 &lt;b&gt;요구사항마다 M/O를 표기&lt;/b&gt;한다. M은 Must의 약자로, 설계하고자 하는 시스템이 반드시 충족해야하는 요구조건을 나타낸다. O는 Option의 약자로, 시스템이 충족하면 좋지만 반드시 충족할 필요는 없는 요구조건을 나타낸다. 일반적으로 O가 부여된 요구조건은 M이 부여된 요구조건보다 충족하기에 더 어려운 사항이며, 편의를 위해 M은 생략하고 O만 표기하기도 한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: justify;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3. 주의사항&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;요구사항목록에는 &lt;b&gt;설계대안을 미리 지정하는 내용은 포함하지 않는다.&lt;/b&gt; 어떤 구조를 이용할 것인지, 어떤 구동기를 사용할 것인지 등 설계대안을 하나로 고정하는 표현이 들어가면 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;새로운 설계대안을 고려할 가능성을 배제하고 추후에 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;최적 설계대안을 선정하는 데 방해가 될 수 있다. 따라서 아래 예시와 같이 요구사항목록에는 사용자가 요구하는 기능과 제한조건들만 기술하여야 한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 236px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 12.8682%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;항목&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 6.24026%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;M/O&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 80.8914%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;요구기능 및 제한조건&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 12.8682%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;기하학적 형상&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 6.24026%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #ffffff;&quot;&gt;M&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #ffffff;&quot;&gt;M&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #ffffff;&quot;&gt;M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 80.8914%; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;&lt;span style=&quot;text-align: start;&quot;&gt;●&amp;nbsp; 너비:&amp;nbsp; 800.0 mm 이하&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;text-align: start;&quot;&gt;●&amp;nbsp; 깊이:&amp;nbsp; 80.0 mm 이하&lt;span style=&quot;text-align: start;&quot;&gt;&lt;span style=&quot;text-align: start;&quot;&gt;&lt;br /&gt;●&amp;nbsp; 높이:&amp;nbsp; 40.0mm 이하&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 12.8682%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;운동&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 6.24026%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #ffffff;&quot;&gt;M&lt;br /&gt;M&lt;br /&gt;M&lt;br /&gt;M&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #ffffff;&quot;&gt;M&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;O&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #ffffff; font-family: 'Noto Sans Light';&quot;&gt;M&lt;br /&gt;M&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;O&lt;br /&gt;&lt;span style=&quot;color: #ffffff;&quot;&gt;M&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #ffffff;&quot;&gt;M&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 80.8914%; height: 21px;&quot;&gt;&lt;span style=&quot;color: #333333; font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;text-align: start;&quot;&gt;&lt;span style=&quot;text-align: start;&quot;&gt; &lt;span style=&quot;text-align: start;&quot;&gt;●&amp;nbsp; 본 시스템은 사용자가 물체를 배치하면 자동으로 장착 또는 고정할 수 있어야 한다.&lt;/span&gt;&lt;br /&gt;●&amp;nbsp; 본 시스템은 시스템에 장착된 물체의 위치를 XY 평면에 대하여 바꿀 수 있어야 한다.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt; &lt;span style=&quot;text-align: start;&quot;&gt;●&amp;nbsp; 본 시스템은 물체를 자동으로 탈착할 수 있어야 한다.&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;&lt;span style=&quot;text-align: start;&quot;&gt;●&amp;nbsp; 변위&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;text-align: start;&quot;&gt;-&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;text-align: start;&quot;&gt;XY 5.0 mm (&lt;/span&gt;&lt;span style=&quot;text-align: start;&quot;&gt;중심선을 기준으로 &amp;plusmn;2.5 mm)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;&lt;span style=&quot;text-align: start;&quot;&gt;-&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;text-align: start;&quot;&gt;XY 10.0 mm (&lt;/span&gt;&lt;span style=&quot;text-align: start;&quot;&gt;중심선을 기준으로 &amp;plusmn;5.0 mm)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #333333; text-align: start; font-family: 'Noto Sans Light';&quot;&gt;●&amp;nbsp; 분해능&lt;br /&gt;-&amp;nbsp;&amp;nbsp;&lt;span style=&quot;text-align: start;&quot;&gt;XY 0.1 mm 이하&lt;br /&gt;&lt;span style=&quot;text-align: start;&quot;&gt;-&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;text-align: start;&quot;&gt;XY 0.01 mm 이하&lt;br /&gt;&lt;span style=&quot;text-align: start;&quot;&gt;●&amp;nbsp; 속도: &lt;/span&gt;&lt;span style=&quot;text-align: start;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;text-align: start;&quot;&gt;XY 15 mm/s 이상&lt;br /&gt;&lt;span style=&quot;text-align: start;&quot;&gt;●&amp;nbsp; 가속도:&lt;/span&gt;&lt;span style=&quot;text-align: start;&quot;&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;text-align: start;&quot;&gt;XY 200.0 mm/s&lt;sup&gt;2&lt;/sup&gt; 이상&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 12.8682%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;힘&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 6.24026%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #ffffff;&quot;&gt;M&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #ffffff;&quot;&gt;M&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;O&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #ffffff;&quot;&gt;M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 80.8914%; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;&lt;span style=&quot;text-align: start;&quot;&gt;●&amp;nbsp; 힘 용량&lt;br /&gt;&lt;/span&gt;-&amp;nbsp; 7.0 N 이상&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;-&amp;nbsp; 10.0N 이상&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #333333; text-align: start; font-family: 'Noto Sans Light';&quot;&gt;●&amp;nbsp; 무게:&amp;nbsp; 20.0 N (2.0 kg) &lt;span style=&quot;text-align: start;&quot;&gt;이하&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 12.8682%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;에너지원&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 6.24026%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #ffffff;&quot;&gt;M&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #ffffff;&quot;&gt;M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 80.8914%; height: 21px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: start;&quot;&gt; ●&amp;nbsp; 전기에너지:&amp;nbsp; AC 220V&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;&lt;span style=&quot;text-align: start;&quot;&gt;●&amp;nbsp; 공압에너지: 0.8 MPa 이하&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;width: 12.8682%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;신호&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 6.24026%; height: 21px; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #ffffff;&quot;&gt;M&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #ffffff;&quot;&gt;M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 80.8914%; height: 21px;&quot;&gt;&lt;span style=&quot;color: #333333; font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;text-align: start;&quot;&gt;●&amp;nbsp; 본 시스템은 사용자로부터 조작 신호를 받을 수 있어야 한다.&lt;br /&gt;&lt;/span&gt;●&amp;nbsp; 본 시스템은 사용자에게 상태 표시를 할 수 있어야 한다.&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 44px;&quot;&gt;
&lt;td style=&quot;width: 12.8682%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;사용환경&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 6.24026%; text-align: center; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #ffffff;&quot;&gt;M&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #ffffff;&quot;&gt;M&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 80.8914%; height: 44px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: start;&quot;&gt; ●&amp;nbsp; 온도:&amp;nbsp; 20 ~ 40 &amp;deg;C &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;●&amp;nbsp; 습도:&amp;nbsp; 40 ~ 80%&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 66px;&quot;&gt;
&lt;td style=&quot;width: 12.8682%; text-align: center; height: 66px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;제조원가&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 6.24026%; text-align: center; height: 66px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #ffffff;&quot;&gt;M&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #ffffff;&quot;&gt;M&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;O&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 80.8914%; height: 66px;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt; &lt;span style=&quot;text-align: start;&quot;&gt;●&amp;nbsp; 재료비:&lt;br /&gt;&lt;/span&gt;-&amp;nbsp; 8,000,000원 이하&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333;&quot;&gt;-&amp;nbsp; 3,000,000원 이하&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;[함께 읽으면 좋은 페이지]&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1766056257054&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;공학설계 | 개념설계(1): 설계문제와 기능구조도&quot; data-og-description=&quot;1. 공학설계 2. 제품기획 2.1. 요구사항목록 3. 개념설계 3.1. 설계문제와 기능구조도 3.2. 동작원리와 설계대안 4. 기본설계 4.1. 시제품 레이아웃과 공학해석 4.2. 견실최적설계 4.2.1. 문제 정의 4.2.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/391&quot; data-og-url=&quot;https://vedacube.tistory.com/391&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/EG4mz/hyZPR2kjmt/mL9saBS6j4MOknrXE2mKaK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/biHapJ/hyZP0kqwDV/qb5tPkIC14wfBm44ER2ixK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bylpHz/hyZP3anhKb/xBP8QJoIpIljKuwLjKScIk/img.png?width=5537&amp;amp;height=1329&amp;amp;face=0_0_5537_1329&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/391&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/391&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/EG4mz/hyZPR2kjmt/mL9saBS6j4MOknrXE2mKaK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/biHapJ/hyZP0kqwDV/qb5tPkIC14wfBm44ER2ixK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bylpHz/hyZP3anhKb/xBP8QJoIpIljKuwLjKScIk/img.png?width=5537&amp;amp;height=1329&amp;amp;face=0_0_5537_1329');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;공학설계 | 개념설계(1): 설계문제와 기능구조도&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 공학설계 2. 제품기획 2.1. 요구사항목록 3. 개념설계 3.1. 설계문제와 기능구조도 3.2. 동작원리와 설계대안 4. 기본설계 4.1. 시제품 레이아웃과 공학해석 4.2. 견실최적설계 4.2.1. 문제 정의 4.2.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;- 김종원. (2008). 공학설계: 창의적 신제품 개발방법론. 문운당.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Engineering Design</category>
      <category>공학</category>
      <category>공학설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/390</guid>
      <comments>https://vedacube.tistory.com/390#entry390comment</comments>
      <pubDate>Fri, 8 Aug 2025 18:00:19 +0900</pubDate>
    </item>
    <item>
      <title>연구 발표 준비(2): 효과적인 발표 구성 방법</title>
      <link>https://vedacube.tistory.com/394</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 한 편의 시나리오&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1696&quot; data-origin-height=&quot;1316&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xIgnF/btsN8pXEbvZ/h8Aatvwyeakw6lfIoBsd11/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xIgnF/btsN8pXEbvZ/h8Aatvwyeakw6lfIoBsd11/img.png&quot; data-alt=&quot;시나리오&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xIgnF/btsN8pXEbvZ/h8Aatvwyeakw6lfIoBsd11/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FxIgnF%2FbtsN8pXEbvZ%2Fh8Aatvwyeakw6lfIoBsd11%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;303&quot; height=&quot;235&quot; data-origin-width=&quot;1696&quot; data-origin-height=&quot;1316&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;시나리오&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;연구 발표는 대체로 짧은 시간 안에 내용을 전달해야 하므로 효과적으로 구성할 필요가 있다. 단순하게 연구 결과를 나열하기만 한다면 청자는 지루함을 느끼고 빨리 발표가 끝나길 기다리게 될지도 모른다. 비록 짧은 시간이지만&amp;nbsp;청자에게 인상을 남기고 싶다면, 이야기의 힘을 빌어 발표 자료를 한 편의 시나리오처럼 구성하는 것은 어떨까? &lt;b&gt;서론으로 시작하여 본론을 지나 결론에 이르기까지 모든 슬라이드 한 장이 각각 독립적인 내용&lt;/b&gt;을 담되, &lt;b&gt;다음 슬라이드로 넘어갈 때마다 연결 고리를 마련하여 하나의 이야기로 이어지도록 구성&lt;/b&gt;하는 것이다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 서론 - 본론 - 결론&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;1407&quot; data-origin-height=&quot;1852&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bXA3X1/btsN8IKvByd/85sRIv0fq5NlmTVdnYDrw1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bXA3X1/btsN8IKvByd/85sRIv0fq5NlmTVdnYDrw1/img.png&quot; data-alt=&quot;서론 - 본론 - 결론&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bXA3X1/btsN8IKvByd/85sRIv0fq5NlmTVdnYDrw1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbXA3X1%2FbtsN8IKvByd%2F85sRIv0fq5NlmTVdnYDrw1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;270&quot; height=&quot;355&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;1407&quot; data-origin-height=&quot;1852&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;서론 - 본론 - 결론&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;연구 발표는 일반적으로 표지와 목차를 제외하고 &lt;b&gt;서론 - &lt;/b&gt;&lt;b&gt;본론 - &lt;/b&gt;&lt;b&gt;결론&lt;/b&gt;의 서사를 갖는다. 서론에서는 발표하고자 하는 연구 내용이 얼마나 중요하고 독창적인지 이야기하고, 본론에서는 이를 뒷받침하는 실험 결과들을 보인다. 결론에서는 서론과 본론에서의 이야기를 종합하여 요약하는 것으로 마무리한다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2.1. 표지와 목차&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3212&quot; data-origin-height=&quot;1256&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cat2Xk/btsN8rgSgGl/zdcxNzOrQ4r80oplBHc9X1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cat2Xk/btsN8rgSgGl/zdcxNzOrQ4r80oplBHc9X1/img.png&quot; data-alt=&quot;표지와 목차&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cat2Xk/btsN8rgSgGl/zdcxNzOrQ4r80oplBHc9X1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcat2Xk%2FbtsN8rgSgGl%2FzdcxNzOrQ4r80oplBHc9X1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;575&quot; height=&quot;225&quot; data-origin-width=&quot;3212&quot; data-origin-height=&quot;1256&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;표지와 목차&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;표지에는 연구 내용을 대표하는 &lt;b&gt;제목&lt;/b&gt;과 &lt;b&gt;발표자 성명&lt;/b&gt;, &lt;b&gt;소속&lt;/b&gt;을 기입한다. 청자가 발표에서 다룰 주요 개념에 익숙하지 않다면,&amp;nbsp;발표를 시작하기에 앞서 이해도와 관심도를 높이기 위해 &lt;b&gt;연구 내용과 관련된 그림이나 동영상&lt;/b&gt;을 넣는 것도 방법이다. 목차에서는 발표의 흐름을 간략하게 밝힌다. 연구 발표의 경우에는 그 흐름이 정형화되어 있기 때문에 목차를 생략하기도 한다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2.2. 서론&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;4871&quot; data-origin-height=&quot;1256&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/2DvNs/btsN7Ye8zRI/JmCpJBjiHKQLOvgjjtDkx1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/2DvNs/btsN7Ye8zRI/JmCpJBjiHKQLOvgjjtDkx1/img.png&quot; data-alt=&quot;서론&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/2DvNs/btsN7Ye8zRI/JmCpJBjiHKQLOvgjjtDkx1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F2DvNs%2FbtsN7Ye8zRI%2FJmCpJBjiHKQLOvgjjtDkx1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;833&quot; height=&quot;215&quot; data-origin-width=&quot;4871&quot; data-origin-height=&quot;1256&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;서론&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;서론에서는 발표에서 다룰 연구 내용이 얼마나 중요하고 독창적인지 이야기한다. 이를 위해 &lt;b&gt;문제를 다루게 된 동기&lt;/b&gt;, &lt;b&gt;해당 문제를 풀어야하는 이유&lt;/b&gt;, &lt;b&gt;선행&lt;/b&gt;&lt;b&gt; 연구들의 한계와 해당 연구들과의 차별점&lt;/b&gt;을 밝힌다. 연구 문제에 대한 선행 연구가 있었지만 한계가 존재했는데, 본 연구는 그 한계를 극복했다는 흐름으로 내용을 전개하는 것이다. 이와 같은 흐름으로 청자가 발표를 들어야할 이유를 주장하면서 청자의 관심을 유도한다. &lt;b&gt;서론에서 청자의 관심을 얻지 못하면 발표는 실패했다고 봐도 무방&lt;/b&gt;하다. 그러니 &lt;b&gt;그림과 동영상을 적극적으로 활용&lt;/b&gt;하여 청자의 이해를 돕고 관심을 유도하자.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2.3. 본론&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;4167&quot; data-origin-height=&quot;1256&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/7Pjc0/btsN7W2Upev/ANUW0VpaapcKKFDKJBN5JK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/7Pjc0/btsN7W2Upev/ANUW0VpaapcKKFDKJBN5JK/img.png&quot; data-alt=&quot;본론&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/7Pjc0/btsN7W2Upev/ANUW0VpaapcKKFDKJBN5JK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F7Pjc0%2FbtsN7W2Upev%2FANUW0VpaapcKKFDKJBN5JK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;747&quot; height=&quot;225&quot; data-origin-width=&quot;4167&quot; data-origin-height=&quot;1256&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;본론&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;본론에서는 &lt;b&gt;서론에서 밝힌 연구 문제를 어떤 식으로 해결하였는지 주요 개념과 실험 결과와 함께 설명&lt;/b&gt;한다. 이때 주의할 점은 반드시 &lt;b&gt;핵심적인 연구 내용 몇 가지만 선정&lt;/b&gt;하여 알기 쉽게 설명한다는 것이다. 논문에 담긴 내용 전체를 다루어 발표가 장황해지거나 가설 증명을 위한 수식을 끊임없이 나열하면 청자의 집중력이 흐려지고 결론이 등장하기만을 기다리게 된다. 연구 문제와 관련된 주변 개념과 문제를 해결하기 위한 시행착오 과정은 덜어내고, &lt;b&gt;주요 개념과 결과만을 제시&lt;/b&gt;하여 청자들이 정보를 얻어가기 쉽게 유도한다. 이와 더불어 청자가 한눈에 이해할 수 있도록 &lt;b&gt;수식을 이용해 설명하는 것은 최대한 지양&lt;/b&gt;한다. 대신 &lt;b&gt;그림과 그래프, 동영상을 적극적으로 활용&lt;/b&gt;하자.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2.4. 결론&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1554&quot; data-origin-height=&quot;1256&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ljNEz/btsN6SN33Qg/tKAxZ2jIsrKRkXlSJKQ6G1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ljNEz/btsN6SN33Qg/tKAxZ2jIsrKRkXlSJKQ6G1/img.png&quot; data-alt=&quot;결론&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ljNEz/btsN6SN33Qg/tKAxZ2jIsrKRkXlSJKQ6G1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FljNEz%2FbtsN6SN33Qg%2FtKAxZ2jIsrKRkXlSJKQ6G1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;278&quot; height=&quot;225&quot; data-origin-width=&quot;1554&quot; data-origin-height=&quot;1256&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;결론&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;연구 발표에서의 결론는 요약에 해당한다. &lt;b&gt;서론과 본론을 한 슬라이드에 요약&lt;/b&gt;하여 제시하고 해당 연구의 중요도와 독창성을 청자에게 상기시킨다. &lt;b&gt;향후 연구과제&lt;/b&gt;를 간단하게 제시하면서 발표를 마친다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3. 독립된 장면과 연결 고리&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;7.png&quot; data-origin-width=&quot;6006&quot; data-origin-height=&quot;2776&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/sOQ2c/btsN9B4GT4F/eBSgVGOkD9J6xUVTf1VGkk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/sOQ2c/btsN9B4GT4F/eBSgVGOkD9J6xUVTf1VGkk/img.png&quot; data-alt=&quot;독립된 장면과 연결 고리&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/sOQ2c/btsN9B4GT4F/eBSgVGOkD9J6xUVTf1VGkk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FsOQ2c%2FbtsN9B4GT4F%2FeBSgVGOkD9J6xUVTf1VGkk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;856&quot; height=&quot;396&quot; data-filename=&quot;7.png&quot; data-origin-width=&quot;6006&quot; data-origin-height=&quot;2776&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;독립된 장면과 연결 고리&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;발표 자료는 &lt;b&gt;청자가 중간에 발표 흐름을 놓치더라도 임의의 슬라이드를 보았을 때 스스로 해당 내용을 파악할 수 있을 만큼 충분히 독립적&lt;/b&gt;이어야 한다. 이를 위해 슬라이드 내용을 대표하는 부제목을 작성하고, 그림과 동영상에 설명을 덧붙이도록 하자. 더 나아가 각 슬라이드가 하나의 이야기처럼 연결되도록 두 슬라이드를 연결하는 고리를 마련하자. &lt;b&gt;간이 슬라이드나 발표 대사 등의 전환 장치를 마련&lt;/b&gt;해놓으면 이야기 흐름이 유지되어 청자의 몰입력을 유지할 수 있다.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1751688423692&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;연구논문 탐구(2): 연구논문은 어떻게 작성해야 할까?&quot; data-og-description=&quot;1. 어떤 순서로 어떻게 작성하면 좋을까? 계획한 바에 따라 원하는 실험 결과를 모두 얻었다면 이제 연구논문을 작성할 차례다. 연구논문을 읽을 때와 마찬가지로, 연구논문을 작성하는 데 정해&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/324&quot; data-og-url=&quot;https://vedacube.tistory.com/324&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/eoS07u/hyZfZ1ZeP0/z8uwhB2XpfnkiyxjoKNYV0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/biFhzW/hyZfs4cVA8/cmGyp4cxLBqNuXAxbKXUb0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bquKkC/hyZfp7tJyO/6vfx4IUWJOptaZH7xKkkyk/img.png?width=1978&amp;amp;height=1425&amp;amp;face=0_0_1978_1425&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/324&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/324&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/eoS07u/hyZfZ1ZeP0/z8uwhB2XpfnkiyxjoKNYV0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/biFhzW/hyZfs4cVA8/cmGyp4cxLBqNuXAxbKXUb0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bquKkC/hyZfp7tJyO/6vfx4IUWJOptaZH7xKkkyk/img.png?width=1978&amp;amp;height=1425&amp;amp;face=0_0_1978_1425');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;연구논문 탐구(2): 연구논문은 어떻게 작성해야 할까?&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 어떤 순서로 어떻게 작성하면 좋을까? 계획한 바에 따라 원하는 실험 결과를 모두 얻었다면 이제 연구논문을 작성할 차례다. 연구논문을 읽을 때와 마찬가지로, 연구논문을 작성하는 데 정해&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1751688376678&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;연구 발표 준비(1): 청자는 누구인가?&quot; data-og-description=&quot;1. 연구 발표의 목적 연구논문을 학회지에 출판한 상태라면, 국내외 학회에서 연구 결과를 발표하는 일이 자주 생긴다. 이외에도 학위논문 심사를 받거나, 세미나의 발표자로 초청받거나, 회사&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/389&quot; data-og-url=&quot;https://vedacube.tistory.com/389&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cEd7cs/hyZfxqVkhW/NVzkKHP5waKO6ijIxXFEZK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/fPwl2/hyZfywBwSI/yePSc9EEbtHsVfSvBfZBi0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/caf8P4/hyZf1MjTCR/Mbfeeit3mAEpaXSZNPAPO0/img.png?width=1716&amp;amp;height=1699&amp;amp;face=0_0_1716_1699&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/389&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/389&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cEd7cs/hyZfxqVkhW/NVzkKHP5waKO6ijIxXFEZK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/fPwl2/hyZfywBwSI/yePSc9EEbtHsVfSvBfZBi0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/caf8P4/hyZf1MjTCR/Mbfeeit3mAEpaXSZNPAPO0/img.png?width=1716&amp;amp;height=1699&amp;amp;face=0_0_1716_1699');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;연구 발표 준비(1): 청자는 누구인가?&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 연구 발표의 목적 연구논문을 학회지에 출판한 상태라면, 국내외 학회에서 연구 결과를 발표하는 일이 자주 생긴다. 이외에도 학위논문 심사를 받거나, 세미나의 발표자로 초청받거나, 회사&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&lt;b&gt;참고문헌&lt;/b&gt;&lt;br /&gt;- 김종원. (2008). 공학설계: 창의적 신제품 개발방법론. 문운당&lt;/span&gt;.&lt;/p&gt;</description>
      <category>Research/Graduate School</category>
      <category>논문</category>
      <category>대학원</category>
      <category>대학원생</category>
      <category>연구</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/394</guid>
      <comments>https://vedacube.tistory.com/394#entry394comment</comments>
      <pubDate>Fri, 1 Aug 2025 18:00:23 +0900</pubDate>
    </item>
    <item>
      <title>최적설계 | 파이썬 기반 이차계획문제 알고리즘 qpsolvers.solve_qp</title>
      <link>https://vedacube.tistory.com/103</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;1. 최적설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/336&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 설계문제 정식화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/352&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.2. 제약조건의 정규화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/338&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2. 최적성 조건&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/339&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/340&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2. 부등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/341&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3. KKT 최적성 조건&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/346&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 대안 형식과 이계 필요조건&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/317&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3. 선형계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/348&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 심플렉스법&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/354&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1.1. 인위변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/353&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. scipy.optimize.linprog&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/320&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4. 이차계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/103&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. qpsolvers.solve_qp ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 비제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/166&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 최속강하법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/109&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 공액경사법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/122&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 구간감소법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/123&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. 설계문제의 선형화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/130&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.2. 순차 선형계획법 SLP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/80&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.3. 순차 이차계획법 SQP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/396&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.4. 부정확 이동거리 탐색법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/321&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.5. 제약최속강하법 CSD&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 자연 영감 탐색법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/397&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 유전 알고리즘 GA&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/405&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1.1. pygad.GA&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/398&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. 미분 진화 알고리즘 DE&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/156&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2.1. scipy.optimize.differential_evolution&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 다목적 최적설계 문제&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/144&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 파레토 최적점&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/431&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 가중치 합 방법&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/213&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 비지배 정렬 유전 알고리즘 NSGA-II&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/212&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3.1. pymoo.alghrithms.moo.nsga2.NSGA2&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. qpsolvers&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&amp;nbsp;&amp;nbsp; qpsolvers는 파이썬 기반의&amp;nbsp;&lt;b&gt;오픈소스 패키지&lt;/b&gt;로, &lt;/span&gt;&lt;b&gt;이차계획문제 풀이&lt;/b&gt;를 위한 다양한 알고리즘을 제공한다. &lt;span style=&quot;color: #333333;&quot;&gt;파이썬 기반의 연산 패키지인 NumPy와도 호환이 가능해&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #333333;&quot;&gt;복잡하게 형식을 정의할 필요가 없어 편리하게 이용할 수 있다.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #333333;&quot;&gt;해당 패키지는 아래 명령어를 명령 프롬프트에 입력하여 설치할 수 있다. &lt;/span&gt;&lt;span style=&quot;color: #333333;&quot;&gt;아래 링크로 접속하면 qpsolvers 패키지에 대한 자세한 설명을 확인할 수 있다.&lt;/span&gt;&lt;span style=&quot;color: #333333;&quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;pip install qpsolvers&lt;/code&gt;&lt;/pre&gt;
&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;GitHub - qpsolvers/qpsolvers: Quadratic programming solvers in Python with a unified API&quot; data-ke-align=&quot;alignCenter&quot; data-og-description=&quot;Quadratic programming solvers in Python with a unified API - qpsolvers/qpsolvers&quot; data-og-host=&quot;github.com&quot; data-og-source-url=&quot;https://github.com/qpsolvers/qpsolvers&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/oPVgM/hyYVfxdWQt/4xBLuXxu14iNfSEUJtNJY1/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600,https://scrap.kakaocdn.net/dn/bEcpav/hyYU8x7n5X/9HkLuT5XastKibQx8bS9nK/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600&quot; data-og-url=&quot;https://github.com/qpsolvers/qpsolvers&quot;&gt;&lt;a href=&quot;https://github.com/qpsolvers/qpsolvers&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://github.com/qpsolvers/qpsolvers&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/oPVgM/hyYVfxdWQt/4xBLuXxu14iNfSEUJtNJY1/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600,https://scrap.kakaocdn.net/dn/bEcpav/hyYU8x7n5X/9HkLuT5XastKibQx8bS9nK/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;GitHub - qpsolvers/qpsolvers: Quadratic programming solvers in Python with a unified API&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Quadratic programming solvers in Python with a unified API - qpsolvers/qpsolvers&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;github.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;qpsolvers 패키지를 성공적으로 설치했다면, 이차계획문제 풀이에 사용할 알고리즘을 추가로 설치해주어야 한다. 해당 패키지를 통해 Clarabel, CVXOPT, DAQP 등 다양한 알고리즘을 적용할 수 있는데, 사용하고자 하는 알고리즘의 이름을 포함하여 명령 프롬프트에 명령어를 입력하면 설치할 수 있다. 해당 글에서 다룰 예제에서는 &lt;b&gt;CVXOPT&lt;/b&gt; 알고리즘을 사용하고자 하므로 명령 프롬프트에 아래와 같은 명령문을 입력하여 설치하였다. &lt;span style=&quot;color: #333333;&quot;&gt;아래 링크로 qpsolvers 패키지에서 지원하는 이차계획문제 풀이 알고리즘의 종류와 설명을 확인할 수 있다.&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;pip install qpsolvers[cvxopt]&lt;/code&gt;&lt;/pre&gt;
&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;Supported solvers - qpsolvers 4.7.0 documentation&quot; data-ke-align=&quot;alignCenter&quot; data-og-description=&quot;Previous Least squares&quot; data-og-host=&quot;qpsolvers.github.io&quot; data-og-source-url=&quot;https://qpsolvers.github.io/qpsolvers/supported-solvers.html&quot; data-og-image=&quot;&quot; data-og-url=&quot;https://qpsolvers.github.io/qpsolvers/supported-solvers.html&quot;&gt;&lt;a href=&quot;https://qpsolvers.github.io/qpsolvers/supported-solvers.html&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://qpsolvers.github.io/qpsolvers/supported-solvers.html&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('\'\'');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Supported solvers - qpsolvers 4.7.0 documentation&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Previous Least squares&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;qpsolvers.github.io&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. qpsolvers.solve_qp&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp;&lt;span style=&quot;color: #333333;&quot;&gt;&amp;nbsp; 해당 패키지가 다루는 이차계획문제는 다음과 같은 형식을 가진다. 따라서 해당 패키지를 이용해 이차계획문제를 풀고자 한다면 해당 형식을 따라 문제를 수정할 필요가 있다. 아래 형식에 맞게 가격계수 행렬과 가격계수 벡터, 부등호제약조건 행렬, 등호제약조건 행렬, 설계변수 범위 벡터를 numpy.array로 정의하여&amp;nbsp;함수에 차례대로 입력하면 알고리즘에 따라 최적화된 결과를 도출한다.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1747227664167&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{minimize}~~~~&amp;amp;f = \frac{1}{2} \mathbf{x}^T \mathbf{P} \mathbf{x} + \mathbf{q}^T \mathbf{x} \\\\
\mathrm{subject~to}~~~~
&amp;amp;\mathbf{G} \mathbf{x} \leq \mathbf{h} \\\\
&amp;amp;\mathbf{A} \mathbf{x} = \mathbf{b} \\\\
&amp;amp;\mathbf{lb} \leq \mathbf{x} \leq \mathbf{ub}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{minimize}~~~~&amp;amp;f = \frac{1}{2} \mathbf{x}^T \mathbf{P} \mathbf{x} + \mathbf{q}^T \mathbf{x} \\\\ \mathrm{subject~to}~~~~ &amp;amp;\mathbf{G} \mathbf{x} \leq \mathbf{h} \\\\ &amp;amp;\mathbf{A} \mathbf{x} = \mathbf{b} \\\\ &amp;amp;\mathbf{lb} \leq \mathbf{x} \leq \mathbf{ub} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;위&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;형식에 맞게&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;최적설계 문제를 정의하고 아래와 같은 요소를 numpy.array와 리스트로 정의하여 함수에 할당하면 알고리즘에 따라 최적화된 결과를 도출한다.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;blockquote style=&quot;background-color: #fcfcfc; color: #666666; text-align: left;&quot; data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;●&amp;nbsp; 환산가격계수 행렬 (P)&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;&lt;b&gt;●&lt;/b&gt;&amp;nbsp; 환산가격계수 벡터 (q)&lt;br /&gt;&lt;b&gt;●&lt;/b&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt; 부등호제약조건 행렬 (G)&lt;/b&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;&lt;b&gt;●&lt;/b&gt;&amp;nbsp; 부등호제약조건 벡터 (h)&lt;br /&gt;&lt;b&gt;●&lt;/b&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt; 등호제약조건 행렬 (A)&lt;br /&gt;&lt;b&gt;&lt;b&gt;●&lt;/b&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;등호제약조건 벡터 (b)&lt;/b&gt;&lt;/b&gt; &lt;br /&gt;&lt;b&gt;&lt;b&gt;●&lt;/b&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;&lt;span&gt; 설계변수 범위 하한&lt;/span&gt;&amp;nbsp;(lb)&lt;br /&gt;&lt;b&gt;&lt;b&gt;●&lt;/b&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;&lt;span&gt; &lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;span&gt;설계변수 범위 상한&lt;/span&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/span&gt;&amp;nbsp;(ub)&lt;/b&gt;&lt;/b&gt; &lt;/b&gt;&lt;/b&gt; &lt;/b&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;○&amp;nbsp; 이차계획문제 알고리즘 종류 (solver='cvxopt')&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3. 파이썬 라이브러리 설치&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;qpsolver 라이브러리를 원활하게 사용하기 위해서는 몇 가지 라이브러리를 추가로 설치해야 한다. 인터넷에 연결된 상태에서 명령 프롬프트에 아래 명령어들을 하나씩 입력하는 것으로 설치할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1769259829460&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;pip install numpy&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;4. 예제&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1821&quot; data-origin-height=&quot;1854&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/5DFMg/btsN4pJWqQE/KZc3D8XRaVUkcMZ5VNQ9Ck/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/5DFMg/btsN4pJWqQE/KZc3D8XRaVUkcMZ5VNQ9Ck/img.png&quot; data-alt=&quot;이차계획문제&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/5DFMg/btsN4pJWqQE/KZc3D8XRaVUkcMZ5VNQ9Ck/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F5DFMg%2FbtsN4pJWqQE%2FKZc3D8XRaVUkcMZ5VNQ9Ck%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;329&quot; height=&quot;335&quot; data-origin-width=&quot;1821&quot; data-origin-height=&quot;1854&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;이차계획문제&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;다음 이차계획문제를 최적화 알고리즘을 이용해 최적화해보자.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1747635676204&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{minimize}~~~~&amp;amp;f = \left( x_1-3 \right)^2 + \left( x_2-3 \right)^2 \\\\
\mathrm{subject~to}~~~~&amp;amp;x_1 + x_2 \leq 4 \\\\
&amp;amp;x_1 - 3x_2 = 1 \\\\
&amp;amp;x_1 \geq 0,~~x_2 \geq 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{minimize}~~~~&amp;amp;f = \left( x_1-3 \right)^2 + \left( x_2-3 \right)^2 \\\\ \mathrm{subject~to}~~~~&amp;amp;x_1 + x_2 \leq 4 \\\\ &amp;amp;x_1 - 3x_2 = 1 \\\\ &amp;amp;x_1 \geq 0,~~x_2 \geq 0 \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;알고리즘에서 요구하는 형식에 맞게 위 이차계획문제를 바꾸어 나타내면 다음과 같다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1747636083649&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{minimize}~~~~&amp;amp;f = x_1^2 + x_2^2 -6x_1 -6x_2 \\\\
\mathrm{subject~to}~~~~&amp;amp;x_1 + x_2 \leq 4 \\\\
&amp;amp;x_1 - 3x_2 = 1 \\\\
&amp;amp;0 \leq x_1 \leq +\infty,~~0 \leq x_2 \leq +\infty
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{minimize}~~~~&amp;amp;f = x_1^2 + x_2^2 -6x_1 -6x_2 \\\\ \mathrm{subject~to}~~~~&amp;amp;x_1 + x_2 \leq 4 \\\\ &amp;amp;x_1 - 3x_2 = 1 \\\\ &amp;amp;0 \leq x_1 \leq +\infty,~~0 \leq x_2 \leq +\infty \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;위 이차계획문제를 행렬식으로 나타내면 다음과 같다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1747636276128&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{minimize}~~~~&amp;amp;f = \frac{1}{2} \mathbf{x}^T \mathbf{P} \mathbf{x} + \mathbf{q}^T \mathbf{x} \\\\
\mathrm{subject~to}~~~~
&amp;amp;\mathbf{G} \mathbf{x} \leq \mathbf{h} \\\\
&amp;amp;\mathbf{A} \mathbf{x} = \mathbf{b} \\\\
&amp;amp;\mathbf{lb} \leq \mathbf{x} \leq \mathbf{ub}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{minimize}~~~~&amp;amp;f = \frac{1}{2} \mathbf{x}^T \mathbf{P} \mathbf{x} + \mathbf{q}^T \mathbf{x} \\\\ \mathrm{subject~to}~~~~ &amp;amp;\mathbf{G} \mathbf{x} \leq \mathbf{h} \\\\ &amp;amp;\mathbf{A} \mathbf{x} = \mathbf{b} \\\\ &amp;amp;\mathbf{lb} \leq \mathbf{x} \leq \mathbf{ub} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1747636308359&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
&amp;amp;\mathbf{P} = 
\begin{bmatrix}
2 &amp;amp; 0 \\
0 &amp;amp; 2 \\
\end{bmatrix},~~~~
\mathbf{q} = 
\begin{bmatrix} 
-6 \\
-6 \\
\end{bmatrix}\\\\

&amp;amp;\mathbf{G} = 
\begin{bmatrix}
1 &amp;amp; 1 \\
\end{bmatrix},~~~~
\mathbf{h} =
\begin{bmatrix} 
4 \\
\end{bmatrix}\\\\

&amp;amp;\mathbf{A} = 
\begin{bmatrix}
1 &amp;amp; -3 \\
\end{bmatrix},~~~~
\mathbf{b} =
\begin{bmatrix} 
1 \\
\end{bmatrix}\\\\

&amp;amp;\mathbf{lb} = 
\begin{bmatrix}
0 \\
0 \\
\end{bmatrix},~~~~
\mathbf{ub} = 
\begin{bmatrix}
+\infty \\
+\infty \\
\end{bmatrix}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} &amp;amp;\mathbf{P} = \begin{bmatrix} 2 &amp;amp; 0 \\ 0 &amp;amp; 2 \\ \end{bmatrix},~~~~ \mathbf{q} = \begin{bmatrix} -6 \\ -6 \\ \end{bmatrix}\\\\ &amp;amp;\mathbf{G} = \begin{bmatrix} 1 &amp;amp; 1 \\ \end{bmatrix},~~~~ \mathbf{h} = \begin{bmatrix} 4 \\ \end{bmatrix}\\\\ &amp;amp;\mathbf{A} = \begin{bmatrix} 1 &amp;amp; -3 \\ \end{bmatrix},~~~~ \mathbf{b} = \begin{bmatrix} 1 \\ \end{bmatrix}\\\\ &amp;amp;\mathbf{lb} = \begin{bmatrix} 0 \\ 0 \\ \end{bmatrix},~~~~ \mathbf{ub} = \begin{bmatrix} +\infty \\ +\infty \\ \end{bmatrix} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;# 라이브러리 추가
import numpy as np
from qpsolvers import solve_qp

# 이차계획문제 가격계수 행렬 및 벡터 정의
P = np.array([[2.0, 0.0], [0.0, 2.0]])
q = np.array([-6.0, -6.0])

# 선형계획문제 부등호제약조건 행렬 정의
G = np.array([1.0, 1.0])
h = np.array([4.0])

# 선형계획문제 등호제약조건 행렬 정의
A = np.array([1.0, -3.0])
b = np.array([1.0])

# 설계변수 범위 벡터 정의 
lb = np.array([0.0, 0.0])
ub = np.array([+np.inf, +np.inf])

# 이차계획문제 최적화 알고리즘
x = solve_qp(P, q, G, h, A, b, lb, ub, solver=&quot;cvxopt&quot;)

# 이차계획문제 최적 결과 출력
print(x)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;[함께 읽으면 좋은 페이지]&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;파이썬이란?&quot; data-ke-align=&quot;alignCenter&quot; data-og-description=&quot;1. 프로그래밍 언어&amp;nbsp; &amp;nbsp;컴퓨터가 작업을 수행하기 위해서는 논리적인 순서에 맞게 명령문이 나열된 작업지시서를 사람으로부터 전달 받아야 한다. 하지만 컴퓨터는 0과 1로 구성된 기계어(machine &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/358&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/fKrrN/hyYRmcFcrs/eLITRKpbPOQGsKKlSRpUAK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bYC80b/hyYVa9vSoN/ik4s1FBNKHvyNQtPctuWN0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800&quot; data-og-url=&quot;https://vedacube.tistory.com/358&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/358&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/358&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/fKrrN/hyYRmcFcrs/eLITRKpbPOQGsKKlSRpUAK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bYC80b/hyYVa9vSoN/ik4s1FBNKHvyNQtPctuWN0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;파이썬이란?&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 프로그래밍 언어&amp;nbsp; &amp;nbsp;컴퓨터가 작업을 수행하기 위해서는 논리적인 순서에 맞게 명령문이 나열된 작업지시서를 사람으로부터 전달 받아야 한다. 하지만 컴퓨터는 0과 1로 구성된 기계어(machine&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1751015298134&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 이차계획법&quot; data-og-description=&quot;1. 이차계획법 이차계획법(Quadratic Programming, QP)은 선형계획법과는 다르게 이차목적함수와 선형제약조건을 갖는다. 실제 응용에서도 많이 찾아볼 수 있으며, 일반적인 비선형계획 알고리즘은 매 &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/320&quot; data-og-url=&quot;https://vedacube.tistory.com/320&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/nqLAN/hyZgaOxZpB/FrvdDkiKpKK42kqE50N0D1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cfL7VU/hyZch2RTVW/f5ISCFt2ul7EkvQyTOZPBK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bZXqso/hyZbunGnpW/hJkrHE8pdoLTYGxifKyD10/img.png?width=1821&amp;amp;height=1855&amp;amp;face=0_0_1821_1855&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/320&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/320&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/nqLAN/hyZgaOxZpB/FrvdDkiKpKK42kqE50N0D1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cfL7VU/hyZch2RTVW/f5ISCFt2ul7EkvQyTOZPBK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bZXqso/hyZbunGnpW/hJkrHE8pdoLTYGxifKyD10/img.png?width=1821&amp;amp;height=1855&amp;amp;face=0_0_1821_1855');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 이차계획법&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 이차계획법 이차계획법(Quadratic Programming, QP)은 선형계획법과는 다르게 이차목적함수와 선형제약조건을 갖는다. 실제 응용에서도 많이 찾아볼 수 있으며, 일반적인 비선형계획 알고리즘은 매&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: start;&quot;&gt;- Stephane Caron. (n.d.). Quadratic programming. qpsolvers documentation. &lt;a href=&quot;https://qpsolvers.github.io/qpsolvers/quadratic-programming.html&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://qpsolvers.github.io/qpsolvers/quadratic-programming.html&lt;/a&gt;. 2025.05.19.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;- Stephane Caron. (n.d.). Quadratic Programming Solvers in Python. Github. &lt;a href=&quot;https://github.com/qpsolvers/qpsolvers?tab=readme-ov-file#example&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span&gt;https://github.com/qpsolvers/qpsolvers?tab=readme-ov-file#example&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;. 2025.05.19.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Optimum Design</category>
      <category>공학</category>
      <category>최적설계</category>
      <category>파이썬</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/103</guid>
      <comments>https://vedacube.tistory.com/103#entry103comment</comments>
      <pubDate>Fri, 25 Jul 2025 18:00:40 +0900</pubDate>
    </item>
    <item>
      <title>파이썬 | 모듈, 패키지, 라이브러리: import-as</title>
      <link>https://vedacube.tistory.com/322</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/358&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 파이썬&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/347&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 기본 기능과 규칙&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 변수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.1. 기본자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/356&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1.1. 정수형, 실수형, 논리형, 문자열&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.2. 복합자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/149&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.1. 리스트, 튜플&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/355&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.2. 딕셔너리, 세트&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.3. 자료형 메소드&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/359&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 리스트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/361&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.2. 딕셔너리 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/362&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.3. 세트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/349&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.4. 객체 복사&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 조건문과 반복문&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/328&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. if-elif-else, while, for&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/234&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. range, enumerate, zip&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/165&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.3. break, continue&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 예외 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/295&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. try-except&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 사용자 정의 함수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/145&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. def-return&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/137&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 매개변수와 전달인자&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/323&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 지역변수와 전역변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 모듈, 패키지, 라이브러리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/322&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. impoart-as ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 파일 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/151&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 메모장 파일 쓰고 읽기&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/402&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. with-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 객체 지향 프로그래밍&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/152&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 클래스와 인스턴스&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/350&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 속성과 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/161&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 클래스 상속&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: left;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 모듈&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;3535&quot; data-origin-height=&quot;1623&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bdp2h3/btsNLTExuuW/hKkvUvlvVKL6dM7VJVAKi1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bdp2h3/btsNLTExuuW/hKkvUvlvVKL6dM7VJVAKi1/img.png&quot; data-alt=&quot;모듈&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bdp2h3/btsNLTExuuW/hKkvUvlvVKL6dM7VJVAKi1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbdp2h3%2FbtsNLTExuuW%2FhKkvUvlvVKL6dM7VJVAKi1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;621&quot; height=&quot;285&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;3535&quot; data-origin-height=&quot;1623&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;모듈&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;모듈(module)은 &lt;b&gt;서로 연관이 있는 함수와 클래스를 저장하고 있는 파일&lt;/b&gt;(.py)이다. 특정 작업을 수행하기 위해 작성하는 프로그램 또한 파일이지만, 모듈은 다른 프로그램 파일에서 불러와 사용하기 위한 도구 모음이라는 점에서 차이가 있다. 현재 작성하고 있는 프로그램에서 &lt;b&gt;모듈을 불러오기 위해 import 명령문을 사용&lt;/b&gt;한다. 아래 예시는 파이썬에서 기본적으로 지원하는 모듈인 math 모듈을 불러오고, 해당 모듈에 저장된 함수와 상수를 호출하였다. 모듈 내에서 특정 기능을 호출하고자 한다면 모듈의 이름과 점 연산자, 그리고 호출하고자 하는 기능의 이름을 작성해야 한다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;import math		# math 모듈 포함

print(math.sqrt(2))	# math 모듈 내 sqrt() 함수 호출
print(math.pow(2, 3))

PI = math.pi		# math 모듈 내 pi 상수 호출
print(math.cos(PI))&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;또는 아래 예시와 같이 &lt;b&gt;as 식별자를 사용하여 모듈에 별칭을 붙여 불러올 수 있다.&lt;/b&gt; 불러오고자 하는 모듈의 이름이 너무 길거나 복잡한 경우에 사용하면 편리하다. 이때 별칭은 사전에 정의한 변수나 파이썬 내장 기능의 이름과 겹치지 않도록 주의해야 한다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1746275769342&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import math as m	# math 모듈을 m이라는 이름으로 포함

print(m.sqrt(2))	# math 모듈 내 sqrt() 함수 호출
print(m.pow(2, 3))

PI = m.pi		# math 모듈 내 pi 상수 호출
print(m.cos(PI))&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;b&gt;모듈에서 일부 기능만 불러오고 싶다면 아래 예시와 같이 from-import 명령문을 사용하자.&lt;/b&gt; 이러한 방식으로 모듈로부터 함수나 상수를 불러오면 모듈 이름과 점 연산자 없이 함수 이름만 호출하는 것으로 기능을 사용할 수 있다.&amp;nbsp;하지만 기존에 생성한 변수나 상수의 이름과 구분되지 않을 수 있어 사용에 주의가 필요하다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1746276059212&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;from math import sqrt, pow, pi, cos	# math 모듈에서 함수와 상수 포함

print(sqrt(2))				# sqrt() 함수 호출
print(pow(2, 3))			# pow() 함수 호출

PI = pi					# pi 상수 호출
print(cos(PI))				# cos() 함수 호출&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;아래 예시와 같이 &lt;b&gt;모듈에서 모든 기능을 불러오는 것 또한 가능하다.&lt;/b&gt; from-import 명령문에서 import 명령문 뒤에 별표를 입력하면 모든 기능을 지칭하므로, 앞선 예시처럼 필요한 기능을 하나하나 불러올 필요가 없어진다. 하지만 기존에 생성한 변수나 상수의 이름과 구분되지 않을 수 있어 사용에 주의가 필요하다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1746276195522&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;from math import *	# math 모듈에서 모든 함수와 상수 포함

print(sqrt(2))		# sqrt() 함수 호출
print(pow(2, 3))	# pow() 함수 호출

PI = pi			# pi 상수 호출
print(cos(PI))		# cos() 함수 호출&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: left;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 패키지&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;3179&quot; data-origin-height=&quot;2017&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/baFf8L/btsNLbr9kWt/G5BuVkNI3RrBM9Vum8utH0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/baFf8L/btsNLbr9kWt/G5BuVkNI3RrBM9Vum8utH0/img.png&quot; data-alt=&quot;패키지&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/baFf8L/btsNLbr9kWt/G5BuVkNI3RrBM9Vum8utH0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbaFf8L%2FbtsNLbr9kWt%2FG5BuVkNI3RrBM9Vum8utH0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;528&quot; height=&quot;335&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;3179&quot; data-origin-height=&quot;2017&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;패키지&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;패키지(package)는 &lt;b&gt;모듈을 모아놓은 폴더&lt;/b&gt;로, &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;일반 폴더와 패키지를 구분하기 위해 폴더 내에 ' __init__.py' 파일을 포함하고 있다. 다양한 모듈&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;이 내재되어 있는 만큼 다채로운 기능을 지원하지만,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;파이썬에서 기본적으로 제공하지 않는 패키지가 많아 추가로 설치가 필요하다. 파이썬 개발 환경에 인터넷이 연결되어 있는 상태라면 &lt;b&gt;명령 프롬프트에 명령어를 입력하는 것으로 패키지를 간편하게 다운로드 받고 설치할 수 있다.&lt;/b&gt; 만약 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: left;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: left;&quot;&gt;파이썬 환경에서 자주 사용되는 패키지인 NumPy를 사용하고자 한다면, 명령 프롬프트에 아래 명령어를 입력하자. &lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: left;&quot;&gt;설치가 완료되면 패키지 또한 모듈처럼 불러와 사용할 수 있게 된다.&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1746280664382&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;pip install numpy&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: left;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3. 라이브러리&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;3193&quot; data-origin-height=&quot;1712&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bjUUol/btsNK23gcGs/du0zxr0cjPSoYGYWJ0MNu1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bjUUol/btsNK23gcGs/du0zxr0cjPSoYGYWJ0MNu1/img.png&quot; data-alt=&quot;라이브러리&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bjUUol/btsNK23gcGs/du0zxr0cjPSoYGYWJ0MNu1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbjUUol%2FbtsNK23gcGs%2Fdu0zxr0cjPSoYGYWJ0MNu1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;606&quot; height=&quot;325&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;3193&quot; data-origin-height=&quot;1712&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;라이브러리&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;라이브러리(library)는 웹크롤링이나 머신러닝과 같이 &lt;b&gt;특정한 목적을 위해 다양한 모듈과 패키지를 포함하고 있는 집합&lt;/b&gt;이다. 파이썬에서 제공하는 표준 라이브러리가 아니라면 추가로 설치할 필요가 있으며, 인터넷에 연결된 상태에서 명령 프롬프트에 명령어를 입력하는 것으로 간단하게 설치할 수 있다. 만약 파이썬 환경에서 자주 사용되는 라이브러리인BeautifulSoup를 사용하고자 한다면, 명령 프롬프트에 아래 명령어를 입력하자. 설치가 완료되면 라이브러리 또한 패키지나 모듈처럼 불러와 사용할 수 있게 된다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1746282160834&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;pip install beautifulsoup4&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;[함께 읽으면 좋은 페이지]&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1766060272343&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;파이썬 | 파일 처리(1): 메모장 파일 쓰고 읽기&quot; data-og-description=&quot;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/151&quot; data-og-url=&quot;https://vedacube.tistory.com/151&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bJ0je8/hyZPCFslYz/nCQvjawJWc4d1K8g1aM5u1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bcPbty/hyZPPDs7KY/858Fj9e4g2ozqPugYtpg21/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cdrsZz/hyZPXus9a5/CJPgkpXRc2SnfSjjoKqVI0/img.png?width=2221&amp;amp;height=1602&amp;amp;face=0_0_2221_1602&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/151&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/151&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bJ0je8/hyZPCFslYz/nCQvjawJWc4d1K8g1aM5u1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bcPbty/hyZPPDs7KY/858Fj9e4g2ozqPugYtpg21/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cdrsZz/hyZPXus9a5/CJPgkpXRc2SnfSjjoKqVI0/img.png?width=2221&amp;amp;height=1602&amp;amp;face=0_0_2221_1602');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;파이썬 | 파일 처리(1): 메모장 파일 쓰고 읽기&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;- 박진수. (2019). 바로 쓰는 파이썬. 서울대학교출판문화원.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Programming/Python</category>
      <category>파이썬</category>
      <category>프로그래밍</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/322</guid>
      <comments>https://vedacube.tistory.com/322#entry322comment</comments>
      <pubDate>Fri, 18 Jul 2025 18:00:08 +0900</pubDate>
    </item>
    <item>
      <title>공학설계란?</title>
      <link>https://vedacube.tistory.com/386</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/386&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 공학설계 ★&lt;/a&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 제품기획&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/390&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 요구사항목록&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 개념설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/391&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 설계문제와 기능구조도&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/325&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. 동작원리와 설계대안&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 기본설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/392&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. 시제품 레이아웃과 공학해석&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/404&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2. 견실최적설계&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/409&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.1. 문제 정의&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/410&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.2. 제1차 실험 설계 및 수행&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/411&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.2.3. 민감도 분석&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 상세설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/393&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 제작도면과 자재소요서&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 공학설계&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2988&quot; data-origin-height=&quot;2192&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bw6mmd/btsOhD4bR55/TnE36iUbTwVNN2HEI5KR60/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bw6mmd/btsOhD4bR55/TnE36iUbTwVNN2HEI5KR60/img.png&quot; data-alt=&quot;공학설계&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bw6mmd/btsOhD4bR55/TnE36iUbTwVNN2HEI5KR60/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbw6mmd%2FbtsOhD4bR55%2FTnE36iUbTwVNN2HEI5KR60%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;403&quot; height=&quot;296&quot; data-origin-width=&quot;2988&quot; data-origin-height=&quot;2192&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;공학설계&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;공학설계(engineering design)는 &lt;b&gt;공학 지식을 응용해 사용자가 요구하는 기능과 제한조건들을 충족하는 시스템을 체계적으로 개발하는 과정&lt;/b&gt;이다. 시스템의 용도를 결정하는 기본적인 기능 외에 동작 환경, 속도, 크기, 무게 등을 포함한 요구사항과, 재료 및 기술, 경제성, 합법성 등의 제한조건을 고려하여 사용자가 요구하는 바를 기술적으로 구현하는 것을 목표로 한다. 이를 위해 설계에 참여하는 구성원들과 설계문제를 정의하고 일정한 절차를 거쳐 시스템을 완성한다.&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: justify;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 왜 공학설계인가?&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;공학설계는 제한조건 내에서 요구사항을 만족하는 시스템을 설계하기 위해 광범위하고 복합적인 문제를 해결하는 과정이다. 순간 떠오른 아이디어를 구현하는 방법으로는 다양하면서도 복잡하게 얽힌 요구사항과 제한조건을 만족시키지 못할 가능성이 높다. 따라서 &lt;b&gt;커다란 설계문제를 여러 단계로 나누고 각 단계별로 체계적으로 접근하여 설명 가능한 설계를 완성&lt;/b&gt;하는 것이 필요하다. 실력이 뛰어나고 경험이 많은 구성원들과 함께 시스템을 설계하더라도&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;개개인의 사고 범위는 제한적이기 때문에 체계적으로 접근해야 한다.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3. 공학설계의 단계&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3796&quot; data-origin-height=&quot;563&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ATEj2/btsOifaMNp9/iy01yfKFzDOFuzv9o8kpJ1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ATEj2/btsOifaMNp9/iy01yfKFzDOFuzv9o8kpJ1/img.png&quot; data-alt=&quot;공학설계의 단계&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ATEj2/btsOifaMNp9/iy01yfKFzDOFuzv9o8kpJ1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FATEj2%2FbtsOifaMNp9%2Fiy01yfKFzDOFuzv9o8kpJ1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;705&quot; height=&quot;105&quot; data-origin-width=&quot;3796&quot; data-origin-height=&quot;563&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;공학설계의 단계&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;공학설계는 요구사항과 제한조건을 충족할 수 있는 설계대안을 최대한 많이 창안하고, 그 중에서 가장 적합한 설계대안을 골라 최적화하는 과정을 밟는다. 이를 위해 공학설계는 크게 네 단계,&amp;nbsp;&lt;b&gt;▲제품 기획&lt;/b&gt;,&amp;nbsp;&lt;b&gt;▲개념설계&lt;/b&gt;,&amp;nbsp;&lt;b&gt;▲기본설계&lt;/b&gt;,&amp;nbsp;&lt;b&gt;▲상세설계&lt;/b&gt;를 거치면서 시스템을 구체화한다.&lt;span style=&quot;color: #333333;&quot;&gt; 특히 지금까지 존재하지 않았던 시스템을 설계하는 경우에는 개념설계와 기본설계가 매우 중요하다.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3.1. 제품 기획&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1730&quot; data-origin-height=&quot;1740&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/3wBPs/btsOhkwOtAs/hkVDK2Qlq0poghvGHQxq9K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/3wBPs/btsOhkwOtAs/hkVDK2Qlq0poghvGHQxq9K/img.png&quot; data-alt=&quot;제품 기획&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/3wBPs/btsOhkwOtAs/hkVDK2Qlq0poghvGHQxq9K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F3wBPs%2FbtsOhkwOtAs%2FhkVDK2Qlq0poghvGHQxq9K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;264&quot; height=&quot;266&quot; data-origin-width=&quot;1730&quot; data-origin-height=&quot;1740&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;제품 기획&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;제품 기획(product planning) 단계에서는 시장 조사나 면담을 통해 &lt;b&gt;사용자가 요구하는 기능과 제한조건을 수렴하여 요구사항목록을 작성&lt;/b&gt;한다. 해당 단계에서 시장 조사나 면담 없이 설계 구성원들만의 가설로 요구사항목록을 작성한다면 사용자가 결과물을 반기지 않을 가능성이 높다. 따라서 기술적 구현 난이도는 후순위로 미루더라도 반드시 사용자의 목소리를 반영하여 요구사항목록을 완성하자. 아래 링크로 접속하면 제품 기획 단계에서 수행해야 하는 사항에 대해 확인할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1754829499147&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;공학설계 | 제품 기획: 요구사항목록&quot; data-og-description=&quot;1. 제품 기획 시스템을 설계하기에 앞서, 시장 조사나 면담을 통해 사용자가 어떤 제품을 원하는지 파악한다. 이때 현재 기술력으로 구현 가능한지에 대한 고민은 후순위로 미루고 사용자가 원&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/390&quot; data-og-url=&quot;https://vedacube.tistory.com/390&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/b3M6bF/hyZvxqr043/50AE6sNWJOOv82JLGywoq1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bmeeNo/hyZykwBN6Q/SWzUJBXWKM0xXvBg65ldRK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/Aizva/hyZvsCHgyl/v7oCMeabK6SSKXUplSef1k/img.png?width=3114&amp;amp;height=1668&amp;amp;face=0_0_3114_1668&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/390&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/390&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/b3M6bF/hyZvxqr043/50AE6sNWJOOv82JLGywoq1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bmeeNo/hyZykwBN6Q/SWzUJBXWKM0xXvBg65ldRK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/Aizva/hyZvsCHgyl/v7oCMeabK6SSKXUplSef1k/img.png?width=3114&amp;amp;height=1668&amp;amp;face=0_0_3114_1668');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;공학설계 | 제품 기획: 요구사항목록&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 제품 기획 시스템을 설계하기에 앞서, 시장 조사나 면담을 통해 사용자가 어떤 제품을 원하는지 파악한다. 이때 현재 기술력으로 구현 가능한지에 대한 고민은 후순위로 미루고 사용자가 원&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3.2. 개념설계&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2136&quot; data-origin-height=&quot;1689&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bgyThy/btsOiFUgVUi/3kLkZbkoJnOsKvTTZkLWHk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bgyThy/btsOiFUgVUi/3kLkZbkoJnOsKvTTZkLWHk/img.png&quot; data-alt=&quot;개념설계&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bgyThy/btsOiFUgVUi/3kLkZbkoJnOsKvTTZkLWHk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbgyThy%2FbtsOiFUgVUi%2F3kLkZbkoJnOsKvTTZkLWHk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;335&quot; height=&quot;265&quot; data-origin-width=&quot;2136&quot; data-origin-height=&quot;1689&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;개념설계&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;개념설계(conceptual design) 단계에서는 &lt;b&gt;요구사항목록을 충족할 수 있는 설계대안을 최대한 많이 창안하고, 그 중에서 가장 유망한 설계대안을 선정&lt;/b&gt;한다.&amp;nbsp;기존에는 없었던 창의적인 시스템을 설계한다면 해당 단계가 특히 중요하다. 설계 구성원들은 요구사항 목록으로부터 설계 문제와 기능구조도를 추출하고, 세부 기능에 대한 동작 원리를 전개하고 조합하여 다양한 설계대안을 도출한다. 마지막으로 각 설계대안의 장단점을 분석하고 평가하여 최적의 설계대안을 선정한다. &lt;span style=&quot;color: #333333;&quot;&gt;아래 링크로 접속하면 개념설계 단계서 수행해야 하는 사항에 대해 확인할 수 있다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1756530470945&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;공학설계 | 개념설계(1): 설계문제와 기능구조도&quot; data-og-description=&quot;1. 개념설계 제품 기획 단계에서 요구사항목록을 완성했다면 본격적으로 설계 구성원들이 모여 개념설계를 시작한다. 개념설계 단계에서는 설계대안을 최대한 많이 창안하고 가장 유망한 설계&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/391&quot; data-og-url=&quot;https://vedacube.tistory.com/391&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/dlOlnB/hyZDZtX9mZ/MUGLrESv2GUPDeqUzTPYB0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cpY9YL/hyZC006rhz/JFVKH9AGRHYN12lKyAPdPK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cq1h6m/hyZG8iuV8Y/VdK0d4o3BIvNSKyiKA0gD0/img.png?width=5537&amp;amp;height=1329&amp;amp;face=0_0_5537_1329&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/391&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/391&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/dlOlnB/hyZDZtX9mZ/MUGLrESv2GUPDeqUzTPYB0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cpY9YL/hyZC006rhz/JFVKH9AGRHYN12lKyAPdPK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cq1h6m/hyZG8iuV8Y/VdK0d4o3BIvNSKyiKA0gD0/img.png?width=5537&amp;amp;height=1329&amp;amp;face=0_0_5537_1329');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;공학설계 | 개념설계(1): 설계문제와 기능구조도&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 개념설계 제품 기획 단계에서 요구사항목록을 완성했다면 본격적으로 설계 구성원들이 모여 개념설계를 시작한다. 개념설계 단계에서는 설계대안을 최대한 많이 창안하고 가장 유망한 설계&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3.3. 기본설계&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1629&quot; data-origin-height=&quot;1615&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/balqNV/btsOj0QBQMg/pySG2XrgAyBNq6NodgL6z0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/balqNV/btsOj0QBQMg/pySG2XrgAyBNq6NodgL6z0/img.png&quot; data-alt=&quot;기본설계&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/balqNV/btsOj0QBQMg/pySG2XrgAyBNq6NodgL6z0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbalqNV%2FbtsOj0QBQMg%2FpySG2XrgAyBNq6NodgL6z0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;268&quot; height=&quot;266&quot; data-origin-width=&quot;1629&quot; data-origin-height=&quot;1615&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;기본설계&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;기본설계(embodiment design) 단계에서는 개념설계 단계에서 선정한 &lt;b&gt;최적 설계대안의 레이아웃을 만들고 시제품으로 제작&lt;/b&gt;한다. &lt;b&gt;공학 해석과 실험을 거쳐 시제품이 사용자가 원하는 기능과 제한조건을 충족하는지 검증&lt;/b&gt;한다. 최적 설계대안의 레이아웃을 구성하는 과정에서 시스템을 구성하는 각 부품의 규격과 형상, 재질, 제작 방식 등이 결정되어야 하며,&amp;nbsp;시스템을 조립하는 과정에 문제는 없는지 검토해야 한다. 완성된 레이아웃을 대상으로 유한요소해석, 진동 모드 해석 등의 공학 해석을 수행하여 성능을 검증하고, 더 나아가 시스템이 제 기능을 발휘하지 못할 가능성까지 고려하여 레이아웃을 보완한다. 이를 기반으로 시제품을 제작하면 실험을 통해 강건한 시스템 설계를 위한 데이터를 확보하고 이를 반영하여 최종 레이아웃을 완성한다.아래 링크로 접속하면 기본설계 단계에서 수행해야 하는 사항에 대해 확인할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1759560007701&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;공학설계 | 기본설계(1): 시제품 레이아웃과 공학해석&quot; data-og-description=&quot;1. 기본설계 개념설계 단계에서 최적 설계대안을 선정했다면 기본설계로 들어간다. 기본설계는 시제품 레이아웃을 작성하고 공학해석을 거쳐 성능을 검증한다. 이와 더불어 실패 모드를 상정하&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/392&quot; data-og-url=&quot;https://vedacube.tistory.com/392&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/d5uGgG/hyZJ5ttUfb/JNeUaAO3YkZPvbkkeIrFXK/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/lfN3S/hyZKhAEW2x/Vwr5nFdJvSDhAppSQZITgK/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/bR9iZT/hyZJ5mJMD7/6GP5ybKWaJGhlXkfW9NSmK/img.png?width=4342&amp;amp;height=2456&amp;amp;face=0_0_4342_2456&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/392&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/392&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/d5uGgG/hyZJ5ttUfb/JNeUaAO3YkZPvbkkeIrFXK/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/lfN3S/hyZKhAEW2x/Vwr5nFdJvSDhAppSQZITgK/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/bR9iZT/hyZJ5mJMD7/6GP5ybKWaJGhlXkfW9NSmK/img.png?width=4342&amp;amp;height=2456&amp;amp;face=0_0_4342_2456');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;공학설계 | 기본설계(1): 시제품 레이아웃과 공학해석&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 기본설계 개념설계 단계에서 최적 설계대안을 선정했다면 기본설계로 들어간다. 기본설계는 시제품 레이아웃을 작성하고 공학해석을 거쳐 성능을 검증한다. 이와 더불어 실패 모드를 상정하&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3.4. 상세설계&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1939&quot; data-origin-height=&quot;1478&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bec5Xp/btsOjrHLIWD/X18UmsCTpkhY6XOLhOvgt0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bec5Xp/btsOjrHLIWD/X18UmsCTpkhY6XOLhOvgt0/img.png&quot; data-alt=&quot;상세설계&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bec5Xp/btsOjrHLIWD/X18UmsCTpkhY6XOLhOvgt0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbec5Xp%2FbtsOjrHLIWD%2FX18UmsCTpkhY6XOLhOvgt0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;282&quot; height=&quot;215&quot; data-origin-width=&quot;1939&quot; data-origin-height=&quot;1478&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;상세설계&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;상세설계(detail design) 단계에서는 기본설계에서 도출된 &lt;b&gt;최종 레이아웃을 기반으로 제작도면과 자재소요서를 작성&lt;/b&gt;한다. 앞서 시제품을 제작하면서 제작도면의 초안이 완성된 상태이므로, 해당 단계에서는 실험을 통해 확정된 설계변수를 반영하여 양산을 위한 제작도면과 자재소요서를 완성한다.&lt;span style=&quot;color: #333333;&quot;&gt; 아래 링크로 접속하면 상세설계 단계에서 수행해야 하는 사항에 대해 확인할 수 있다.&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1765608647910&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;공학설계 | 상세설계: 제작도면과 자재소요서&quot; data-og-description=&quot;1. 상세설계 상세설계 단계에서는 시스템의 레이아웃을 확정하고 제작도면과 자재소요서를 작성한다. 기본설계 단계에서 시제품을 제작하면서 제작도면의 초안이 어느 정도 작성된 상태이므로&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/393&quot; data-og-url=&quot;https://vedacube.tistory.com/393&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/eEWZH/hyZOKQZUgx/dkeZaRAJmdVJgnxffSWuMk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/df1e1M/hyZPMNa1aQ/KklmEaKsrpLIrtrLgiYmL1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bifFU7/hyZPgbvCZB/RTgDpKi0W3NdClokOqkzEK/img.png?width=7056&amp;amp;height=3619&amp;amp;face=0_0_7056_3619&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/393&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/393&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/eEWZH/hyZOKQZUgx/dkeZaRAJmdVJgnxffSWuMk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/df1e1M/hyZPMNa1aQ/KklmEaKsrpLIrtrLgiYmL1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bifFU7/hyZPgbvCZB/RTgDpKi0W3NdClokOqkzEK/img.png?width=7056&amp;amp;height=3619&amp;amp;face=0_0_7056_3619');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;공학설계 | 상세설계: 제작도면과 자재소요서&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 상세설계 상세설계 단계에서는 시스템의 레이아웃을 확정하고 제작도면과 자재소요서를 작성한다. 기본설계 단계에서 시제품을 제작하면서 제작도면의 초안이 어느 정도 작성된 상태이므로&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;- 김종원. (2008). 공학설계: 창의적 신제품 개발방법론. 문운당.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Engineering Design</category>
      <category>공학</category>
      <category>공학설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/386</guid>
      <comments>https://vedacube.tistory.com/386#entry386comment</comments>
      <pubDate>Fri, 11 Jul 2025 18:00:42 +0900</pubDate>
    </item>
    <item>
      <title>연구 발표 준비(1): 청자는 누구인가?</title>
      <link>https://vedacube.tistory.com/389</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 연구 발표의 목적&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;1703&quot; data-origin-height=&quot;1698&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bDJhFm/btsN2Rf5Pzz/tIQR7x8x9RYw6kZTWwgb10/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bDJhFm/btsN2Rf5Pzz/tIQR7x8x9RYw6kZTWwgb10/img.png&quot; data-alt=&quot;연구 발표&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bDJhFm/btsN2Rf5Pzz/tIQR7x8x9RYw6kZTWwgb10/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbDJhFm%2FbtsN2Rf5Pzz%2FtIQR7x8x9RYw6kZTWwgb10%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;306&quot; height=&quot;305&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;1703&quot; data-origin-height=&quot;1698&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;연구 발표&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;연구논문을 학회지에 출판한 상태라면, 국내외 학회에서 연구 결과를 발표하는 일이 자주 생긴다. 이외에도 학위논문 심사를 받거나, 세미나의 발표자로 초청받거나, 회사에서 상급자들에게 연구 성과를 보고하는 등 본인이 지금까지 연구한 결과를 다른 사람들에게 공유하는 순간들이 있다. 상황은 다르더라도 &lt;b&gt;모든 연구 발표의 공통된 목적은 내가 연구한 내용을 청중에게 알리는 것이다.&lt;/b&gt; 연구 결과가 아무리 훌륭하더라도 청중이 발표 내용을 이해하지 못한다면 발표의 목적이 무색해진다. 따라서 연구 발표의 목표는 내가 얼마나 멋진 발표를 할 것인지가 아니라, &lt;b&gt;청중이 연구 결과를 얼마나 이해할 것인지&lt;/b&gt;에 있어야 한다.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 style=&quot;text-align: justify;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 발표 준비를 하기에 앞서&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;연구 결과를 정리하여 주어진 시간에 모든 내용을 순서대로 설명한다는 생각에서 벗어나야 한다. 발표는 오직 청중을 위해 준비되어야 하며, 이를 위해 다음과 같은 질문에 스스로 답해보도록 하자.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2.1. 청자는 누구인가?&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;1703&quot; data-origin-height=&quot;1698&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bLp41e/btsN3KUNMBi/7eaEIpED92aYd5zRkkf0NK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bLp41e/btsN3KUNMBi/7eaEIpED92aYd5zRkkf0NK/img.png&quot; data-alt=&quot;청자는 누구인가&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bLp41e/btsN3KUNMBi/7eaEIpED92aYd5zRkkf0NK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbLp41e%2FbtsN3KUNMBi%2F7eaEIpED92aYd5zRkkf0NK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;306&quot; height=&quot;305&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;1703&quot; data-origin-height=&quot;1698&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;청자는 누구인가&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;연구 발표를 듣게 될 청자가 누구인지 생각해보자. 국내외 학회에서 발표한다면 청자는 내 분야와 관련된 교수와 연구원들일 것이고, 회사에서 발표한다면 내 연구 결과에 관심이 있는 임원과 엔지니어들일 것이다. 대학교에서 세미나로 발표한다면 청자는 내 분야를 조금이나마 알고 있거나 전혀 모르는 대학원생 혹은 학부생일 것이다. 같은 연구 내용을 발표하더라도 상황에 따라 청자가 다르기 때문에 &lt;b&gt;발표를 준비하기에 앞서 청자가 누구인지 상정&lt;/b&gt;할 필요가 있다.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2.2. 청자의 수준은 어떠한가?&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;1716&quot; data-origin-height=&quot;1699&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bzRheA/btsN1Y78b2s/OkDig8xSzskzBkp4IVpdv0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bzRheA/btsN1Y78b2s/OkDig8xSzskzBkp4IVpdv0/img.png&quot; data-alt=&quot;청자의 수준은 어떠한가&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bzRheA/btsN1Y78b2s/OkDig8xSzskzBkp4IVpdv0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbzRheA%2FbtsN1Y78b2s%2FOkDig8xSzskzBkp4IVpdv0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;308&quot; height=&quot;305&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;1716&quot; data-origin-height=&quot;1699&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;청자의 수준은 어떠한가&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;청자가 누구일지 상정했다면 청자들의 수준을 어느 정도 가늠할 수 있을 것이다. 교수와 연구원들이라면 내 분야와 관련된 배경지식을 가지고 있을 것이고, 임원과 엔지니어라면 배경지식은 없더라도 발표 내용을 이해하기 위한 전공 지식은 갖추고 있을 것이다. 대학원생과 학부생이라면 경우에 따라서는 전공 지식을 갖추고 있을 수도, 기본적인 교양 지식만 갖추고 있을 수도 있겠다. &lt;b&gt;청자의 수준을 가늠했다면 청자의 수준을 한 두 단계 낮추어 이에 맞게&amp;nbsp;발표 내용을 준비하자.&amp;nbsp;&lt;/b&gt;청자의 수준에 맞게 발표 내용을 준비하더라도 타인이 30분~1시간이라는 짧은 시간 안에 새로운 내용을 모두 파악하는 것은 천재가 아니라면 불가능하다. &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;그러니&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;대다수의 청자가 발표 내용을 이해할 수 있도록 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;청자의 수준을 한 두 단계 낮추어 준비해보자.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2.3. 청자의 수준에 맞는 내용은 어떠해야 하는가?&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;1703&quot; data-origin-height=&quot;1698&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/0mXQU/btsN24zshMS/6y5koz1IC4Lrb2r2KKLaf1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/0mXQU/btsN24zshMS/6y5koz1IC4Lrb2r2KKLaf1/img.png&quot; data-alt=&quot;청자의 수준에 맞는 내용은 어떠해야 하는가?&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/0mXQU/btsN24zshMS/6y5koz1IC4Lrb2r2KKLaf1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F0mXQU%2FbtsN24zshMS%2F6y5koz1IC4Lrb2r2KKLaf1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;306&quot; height=&quot;305&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;1703&quot; data-origin-height=&quot;1698&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;청자의 수준에 맞는 내용은 어떠해야 하는가?&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;청자의 수준을 한 두 단계 낮추어 선정했다면, &lt;b&gt;청자의 입장에서 받아들이기 쉽게 발표 내용을 계획해보자. &lt;/b&gt;청자들이 특정 개념을 이미 알고 있을지&lt;b&gt;, &lt;/b&gt;어떤 용어를 사용해야 바로 이해할 수 있을지, 어떤 식으로 설명해야 흐름을 따라올 수 있을지, 어떤 장치를 마련해야 관심을 유지할 수 있을지 등 발표를 듣는 &lt;b&gt;청자의 입장에서 계속 생각하면서 발표 내용을 구성하자.&lt;/b&gt; 이때 이해를 돕고 관심을 유도하기 위한 &lt;b&gt;그림과 영상을 적극적으로 활용하는 것을 추천한다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1751688443457&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;연구논문 탐구(2): 연구논문은 어떻게 작성해야 할까?&quot; data-og-description=&quot;1. 어떤 순서로 어떻게 작성하면 좋을까? 계획한 바에 따라 원하는 실험 결과를 모두 얻었다면 이제 연구논문을 작성할 차례다. 연구논문을 읽을 때와 마찬가지로, 연구논문을 작성하는 데 정해&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/324&quot; data-og-url=&quot;https://vedacube.tistory.com/324&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/eoS07u/hyZfZ1ZeP0/z8uwhB2XpfnkiyxjoKNYV0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/biFhzW/hyZfs4cVA8/cmGyp4cxLBqNuXAxbKXUb0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bquKkC/hyZfp7tJyO/6vfx4IUWJOptaZH7xKkkyk/img.png?width=1978&amp;amp;height=1425&amp;amp;face=0_0_1978_1425&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/324&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/324&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/eoS07u/hyZfZ1ZeP0/z8uwhB2XpfnkiyxjoKNYV0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/biFhzW/hyZfs4cVA8/cmGyp4cxLBqNuXAxbKXUb0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bquKkC/hyZfp7tJyO/6vfx4IUWJOptaZH7xKkkyk/img.png?width=1978&amp;amp;height=1425&amp;amp;face=0_0_1978_1425');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;연구논문 탐구(2): 연구논문은 어떻게 작성해야 할까?&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 어떤 순서로 어떻게 작성하면 좋을까? 계획한 바에 따라 원하는 실험 결과를 모두 얻었다면 이제 연구논문을 작성할 차례다. 연구논문을 읽을 때와 마찬가지로, 연구논문을 작성하는 데 정해&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1754202979961&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;연구 발표 준비(2): 효과적인 발표 구성 방법&quot; data-og-description=&quot;1. 한 편의 시나리오 연구 발표는 대체로 짧은 시간 안에 내용을 전달해야 하므로 효과적으로 구성할 필요가 있다. 단순하게 연구 결과를 나열하기만 한다면 청자는 지루함을 느끼고 빨리 발표&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/394&quot; data-og-url=&quot;https://vedacube.tistory.com/394&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/sWst3/hyZvjR33tn/Uz1f2ZDKKKGX7fZQ4Nkr9k/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/UNfFp/hyZvpkrwpj/kphqbfwB2oYVskw57poau1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/lftgd/hyZqZnzspy/B4BWFxsiiQ6ZcauzOA9xW1/img.png?width=6006&amp;amp;height=2776&amp;amp;face=0_0_6006_2776&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/394&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/394&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/sWst3/hyZvjR33tn/Uz1f2ZDKKKGX7fZQ4Nkr9k/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/UNfFp/hyZvpkrwpj/kphqbfwB2oYVskw57poau1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/lftgd/hyZqZnzspy/B4BWFxsiiQ6ZcauzOA9xW1/img.png?width=6006&amp;amp;height=2776&amp;amp;face=0_0_6006_2776');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;연구 발표 준비(2): 효과적인 발표 구성 방법&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 한 편의 시나리오 연구 발표는 대체로 짧은 시간 안에 내용을 전달해야 하므로 효과적으로 구성할 필요가 있다. 단순하게 연구 결과를 나열하기만 한다면 청자는 지루함을 느끼고 빨리 발표&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;참고문헌&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;- 김종원. (2008). 공학설계: 창의적 신제품 개발방법론. 문운당.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Research/Graduate School</category>
      <category>논문</category>
      <category>대학원</category>
      <category>대학원생</category>
      <category>연구</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/389</guid>
      <comments>https://vedacube.tistory.com/389#entry389comment</comments>
      <pubDate>Fri, 4 Jul 2025 18:00:56 +0900</pubDate>
    </item>
    <item>
      <title>최적설계 | 이차계획법</title>
      <link>https://vedacube.tistory.com/320</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;1. 최적설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/336&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 설계문제 정식화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/352&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.2. 제약조건의 정규화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/338&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2. 최적성 조건&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/339&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/340&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2. 부등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/341&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3. KKT 최적성 조건&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/346&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 대안 형식과 이계 필요조건&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/317&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3. 선형계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/348&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 심플렉스법&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/354&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1.1. 인위변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/353&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. scipy.optimize.linprog&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/320&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4. 이차계획법 ★&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/103&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. qpsolvers.solve_qp&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 비제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/166&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 최속강하법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/109&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 공액경사법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/122&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 구간감소법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/123&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. 설계문제의 선형화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/130&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.2. 순차 선형계획법 SLP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/80&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.3. 순차 이차계획법 SQP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/396&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.4. 부정확 이동거리 탐색법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/321&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.5. 제약최속강하법 CSD&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 자연 영감 탐색법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/397&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 유전 알고리즘 GA&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/405&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1.1. pygad.GA&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/398&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. 미분 진화 알고리즘 DE&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/156&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2.1. scipy.optimize.differential_evolution&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 다목적 최적설계 문제&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/144&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 파레토 최적점&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/431&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 가중치 합 방법&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/213&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 비지배 정렬 유전 알고리즘 NSGA-II&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/212&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3.1. pymoo.alghrithms.moo.nsga2.NSGA2&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 이차계획법&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;이차계획법(Quadratic Programming, QP)은 선형계획법과는 다르게 &lt;b&gt;이차목적함수와 선형제약조건&lt;/b&gt;을 갖는다. 실제 응용에서도 많이 찾아볼 수 있으며, 일반적인 비선형계획 알고리즘은 매 반복마다 이차계획문제의 해를 요구한다. 이차계획문제는 다음과 같이 정의한다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1746607149817&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{minimize}~~~~&amp;amp;f \left( \mathbf{x} \right) = \frac{1}{2}\mathbf{x}^T\mathbf{H}\mathbf{x}+\mathbf{c}^T\mathbf{x} \\\\
\mathrm{subject~to}~~~~&amp;amp;\mathbf{N}^T\mathbf{x} = \mathbf{e} \\\\
&amp;amp;\mathbf{A}^T\mathbf{x} \leq \mathbf{b} \\\\
&amp;amp;\mathbf{x} \geq \mathbf{0}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{minimize}~~~~&amp;amp;f \left( \mathbf{x} \right) = \frac{1}{2}\mathbf{x}^T\mathbf{H}\mathbf{x}+\mathbf{c}^T\mathbf{x} \\\\ \mathrm{subject~to}~~~~&amp;amp;\mathbf{N}^T\mathbf{x} = \mathbf{e} \\\\ &amp;amp;\mathbf{A}^T\mathbf{x} \leq \mathbf{b} \\\\ &amp;amp;\mathbf{x} \geq \mathbf{0} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 이차계획문제의 KKT 필요조건&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;이차계획문제를 풀기 위해서는 해당 문제에 KKT 필요조건을 사용하고, 이를 심플렉스법을 적용할 수 있는 형태로 변환시킨다. KKT 필요조건을 사용하기 위해 부등호제약조건은 이완변수를 도입하여 다음의 등식으로 변환한다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1746611719305&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathbf{A}^T\mathbf{x} + \mathbf{s} = \mathbf{b};~~~~\mathbf{s} \geq \mathbf{0}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{A}^T\mathbf{x} + \mathbf{s} = \mathbf{b};~~~~\mathbf{s} \geq \mathbf{0} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;이차계획문제를 라그랑주 함수로 나타내면 아래와 같다. 첫 번째 항은 목적함수, 두 번째 항은 부등호제약조건, 세 번째 항은 설계변수가 음이 아닐 조건, 네 번째 항은 등호제약조건에 해당한다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1746611909688&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
L\left ( \mathbf{x} \right ) &amp;amp;= f\left ( \mathbf{x} \right ) + \mathbf{u}^{T} \left( \mathbf{A}^T \mathbf{x} + \mathbf{s} - \mathbf{b} \right ) - \mathbf{\xi}^T \mathbf{x} + \mathbf{v}^T \left ( \mathbf{N}^T \mathbf{x} - \mathbf{e} \right ) \\\\

&amp;amp;= \mathbf{c}^T \mathbf{x} + \frac{1}{2} \mathbf{x}^T \mathbf{H} \mathbf{x} + \mathbf{u}^{T} \left( \mathbf{A}^T \mathbf{x} + \mathbf{s} - \mathbf{b} \right ) - \mathbf{\xi}^T \mathbf{x} + \mathbf{v}^T \left ( \mathbf{N}^T \mathbf{x} - \mathbf{e} \right )
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} L\left ( \mathbf{x} \right ) &amp;amp;= f\left ( \mathbf{x} \right ) + \mathbf{u}^{T} \left( \mathbf{A}^T \mathbf{x} + \mathbf{s} - \mathbf{b} \right ) - \mathbf{\xi}^T \mathbf{x} + \mathbf{v}^T \left ( \mathbf{N}^T \mathbf{x} - \mathbf{e} \right ) \\\\ &amp;amp;= \mathbf{c}^T \mathbf{x} + \frac{1}{2} \mathbf{x}^T \mathbf{H} \mathbf{x} + \mathbf{u}^{T} \left( \mathbf{A}^T \mathbf{x} + \mathbf{s} - \mathbf{b} \right ) - \mathbf{\xi}^T \mathbf{x} + \mathbf{v}^T \left ( \mathbf{N}^T \mathbf{x} - \mathbf{e} \right ) \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;위 식에 KKT 필요조건을 적용하여 다시 나타내면 다음과 같다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1746613718953&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\frac{\partial L \left( \mathbf{x} \right) }{\partial \mathbf{x}} = \mathbf{c}+\mathbf{H}\mathbf{x} + \mathbf{A}\mathbf{u} - \mathbf{\xi} + \mathbf{N}\mathbf{v} &amp;amp;= \mathbf{0}\\\\
\mathbf{A}^T \mathbf{x} + \mathbf{s} - \mathbf{b} &amp;amp;= \mathbf{0} \\\\
\mathbf{N}^T \mathbf{x} - \mathbf{e} &amp;amp;= \mathbf{0} \\\\
u_i s_i \left( \mathbf{x} \right) &amp;amp;= 0;~~~~s_i \geq 0,~~~u_i \geq 0~~~~for~~i=1~~to~~m \\\\
\xi_i x_i \left( \mathbf{x} \right) &amp;amp;= 0;~~~~x_i \geq 0,~~~\xi_i \geq 0~~~~for~~i=1~~to~~n
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \frac{\partial L \left( \mathbf{x} \right) }{\partial \mathbf{x}} = \mathbf{c}+\mathbf{H}\mathbf{x} + \mathbf{A}\mathbf{u} - \mathbf{\xi} + \mathbf{N}\mathbf{v} &amp;amp;= \mathbf{0}\\\\ \mathbf{A}^T \mathbf{x} + \mathbf{s} - \mathbf{b} &amp;amp;= \mathbf{0} \\\\ \mathbf{N}^T \mathbf{x} - \mathbf{e} &amp;amp;= \mathbf{0} \\\\ u_i s_i \left( \mathbf{x} \right) &amp;amp;= 0;~~~~s_i \geq 0,~~~u_i \geq 0~~~~for~~i=1~~to~~m \\\\ \xi_i x_i \left( \mathbf{x} \right) &amp;amp;= 0;~~~~x_i \geq 0,~~~\xi_i \geq 0~~~~for~~i=1~~to~~n \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;등호제약조건에 해당하는 라그랑지 승수는 부호의 제약이 없으므로 다음과 같이 분해한다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1746624285641&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathbf{v} = \mathbf{y} - \mathbf{z};~~~~\mathbf{y} \geq \mathbf{0},~~\mathbf{z} \geq \mathbf{0}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{v} = \mathbf{y} - \mathbf{z};~~~~\mathbf{y} \geq \mathbf{0},~~\mathbf{z} \geq \mathbf{0} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;위 식들을 종합하여 행렬식으로 나타내면 아래와 같다. 이차계획문제에 KKT 필요조건을 적용함으로써, 이차계획문제가 제약조건을 만족하는 선형방정식의 해를 구하는 문제로 축약된다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1746625212282&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\begin{bmatrix}
\mathbf{H} &amp;amp; \mathbf{A} &amp;amp; \mathbf{-I}_{\left(n\right)} &amp;amp; \mathbf{0}_{\left(n \times m\right)} &amp;amp; \mathbf{N} &amp;amp; -\mathbf{N} \\
\mathbf{A}^T &amp;amp; \mathbf{0}_{\left(m \times m\right)} &amp;amp; \mathbf{0}_{\left(m \times n\right)} &amp;amp; \mathbf{I}_{\left(m\right)} &amp;amp; \mathbf{0}_{\left(m \times p\right)} &amp;amp; \mathbf{0}_{\left(m \times p\right)} \\
\mathbf{N}^T &amp;amp; \mathbf{0}_{\left(p \times m\right)} &amp;amp; \mathbf{0}_{\left(p \times n\right)} &amp;amp; \mathbf{0}_{\left(p \times m\right)} &amp;amp; \mathbf{0}_{\left(p \times p\right)} &amp;amp; \mathbf{0}_{\left(p \times p\right)} \\
\end{bmatrix}

\begin{bmatrix}
\mathbf{x} \\
\mathbf{u} \\
\mathbf{\xi} \\
\mathbf{s} \\
\mathbf{y} \\
\mathbf{z}
\end{bmatrix}

=

\begin{bmatrix}
\mathbf{-c} \\
\mathbf{b} \\
\mathbf{e}
\end{bmatrix}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \begin{bmatrix} \mathbf{H} &amp;amp; \mathbf{A} &amp;amp; \mathbf{-I}_{\left(n\right)} &amp;amp; \mathbf{0}_{\left(n \times m\right)} &amp;amp; \mathbf{N} &amp;amp; -\mathbf{N} \\ \mathbf{A}^T &amp;amp; \mathbf{0}_{\left(m \times m\right)} &amp;amp; \mathbf{0}_{\left(m \times n\right)} &amp;amp; \mathbf{I}_{\left(m\right)} &amp;amp; \mathbf{0}_{\left(m \times p\right)} &amp;amp; \mathbf{0}_{\left(m \times p\right)} \\ \mathbf{N}^T &amp;amp; \mathbf{0}_{\left(p \times m\right)} &amp;amp; \mathbf{0}_{\left(p \times n\right)} &amp;amp; \mathbf{0}_{\left(p \times m\right)} &amp;amp; \mathbf{0}_{\left(p \times p\right)} &amp;amp; \mathbf{0}_{\left(p \times p\right)} \\ \end{bmatrix} \begin{bmatrix} \mathbf{x} \\ \mathbf{u} \\ \mathbf{\xi} \\ \mathbf{s} \\ \mathbf{y} \\ \mathbf{z} \end{bmatrix} = \begin{bmatrix} \mathbf{-c} \\ \mathbf{b} \\ \mathbf{e} \end{bmatrix} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1746625385783&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathbf{B}\mathbf{X} = \mathbf{D}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{B}\mathbf{X} = \mathbf{D} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;3. 이차계획문제와 심플렉스법&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;심플렉스법을 적용하기 위해, 등호제약에 인위변수를 정의하고 인위가격함수를 만들어 초기 기저유용해를 결정한다. 등호제약조건에 인위변수를 도입하여 나타내면 아래와 같다. 이렇게 하여 모든 설계변수를 비기저변수로, 인위변수를 기저변수로 선택한다. 초기 기저해가 유용해가 되기 위해서는 우변에 있는 모든 요소가 양의 값을 가져야 한다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1746699342173&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathbf{B}\mathbf{X} + \mathbf{Y} = \mathbf{D}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{B}\mathbf{X} + \mathbf{Y} = \mathbf{D} \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;선형계획법에서의 심플렉스법과 마찬가지로, 인위가격함수는 인위변수의 합으로 정의된다.&amp;nbsp; 이때 인위가격함수는 다음과 같이 비기저변수의 항으로만 나타내야 한다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1746699586307&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\omega &amp;amp;= \sum_{i=1}^{n+m+p}Y_i \\\\
&amp;amp;= \sum_{i=1}^{n+m+p}D_i - \sum_{j=1}^{2\left(n+m+p\right)}\sum_{i=1}^{n+m+p}B_{ij}X_j \\\\
&amp;amp;= \omega_0 + \sum_{j=1}^{2\left(n+m+p\right)}C_{j}X_j
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \omega &amp;amp;= \sum_{i=1}^{n+m+p}Y_i \\\\ &amp;amp;= \sum_{i=1}^{n+m+p}D_i - \sum_{j=1}^{2\left(n+m+p\right)}\sum_{i=1}^{n+m+p}B_{ij}X_j \\\\ &amp;amp;= \omega_0 + \sum_{j=1}^{2\left(n+m+p\right)}C_{j}X_j \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;4. 예제&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1821&quot; data-origin-height=&quot;1855&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b4Usiw/btsNOiTEhb7/DbEgIerYqkvRiuRgoOuE3k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b4Usiw/btsNOiTEhb7/DbEgIerYqkvRiuRgoOuE3k/img.png&quot; data-alt=&quot;이차계획법&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b4Usiw/btsNOiTEhb7/DbEgIerYqkvRiuRgoOuE3k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb4Usiw%2FbtsNOiTEhb7%2FDbEgIerYqkvRiuRgoOuE3k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;344&quot; height=&quot;350&quot; data-origin-width=&quot;1821&quot; data-origin-height=&quot;1855&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;이차계획법&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;아래에 주어진 비선형&amp;middot;제약조건 문제에 이차계획법을 적용하여 최적화해보자.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1746704283583&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{minimize}~~~~&amp;amp;f = \left( x_1-3 \right)^2 + \left( x_2-3 \right)^2 \\\\
\mathrm{subject~to}~~~~&amp;amp;x_1 + x_2 \leq 4 \\\\
&amp;amp;x_1 - 3x_2 = 1 \\\\
&amp;amp;x_1 \geq 0,~~x_2 \geq 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{minimize}~~~~&amp;amp;f = \left( x_1-3 \right)^2 + \left( x_2-3 \right)^2 \\\\ \mathrm{subject~to}~~~~&amp;amp;x_1 + x_2 \leq 4 \\\\ &amp;amp;x_1 - 3x_2 = 1 \\\\ &amp;amp;x_1 \geq 0,~~x_2 \geq 0 \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;주어진 목적함수를 전개하여 행렬식으로 나타내면 다음과 같다. 연산의 편의를 위해 목적함수의 상수는 무시한다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1746704464298&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align} 
f &amp;amp;= x_1^2+x_2^2-6x_1-6x_2 \\\\
&amp;amp;= \mathbf{c}^T \mathbf{x} + \frac{1}{2} \mathbf{x}^T \mathbf{H} \mathbf{x} \\\\
&amp;amp;= 
\begin{bmatrix}
-6 &amp;amp; -6 \\
\end{bmatrix}

\begin{bmatrix}
x_1 \\ x_2
\end{bmatrix}

+ \frac{1}{2}

\begin{bmatrix}
x_1 &amp;amp; x_2 \\
\end{bmatrix}

\begin{bmatrix}
2 &amp;amp; 0 \\
0 &amp;amp; 2 \\
\end{bmatrix}

\begin{bmatrix}
x_1 \\ x_2
\end{bmatrix} 
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} f &amp;amp;= x_1^2+x_2^2-6x_1-6x_2 \\\\ &amp;amp;= \mathbf{c}^T \mathbf{x} + \frac{1}{2} \mathbf{x}^T \mathbf{H} \mathbf{x} \\\\ &amp;amp;= \begin{bmatrix} -6 &amp;amp; -6 \\ \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \end{bmatrix} + \frac{1}{2} \begin{bmatrix} x_1 &amp;amp; x_2 \\ \end{bmatrix} \begin{bmatrix} 2 &amp;amp; 0 \\ 0 &amp;amp; 2 \\ \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \end{bmatrix} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1746704899726&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathbf{N}^T\mathbf{x} &amp;amp;= \mathbf{e} \\\\
\begin{bmatrix}
1 &amp;amp; -3 \\
\end{bmatrix}

\begin{bmatrix}
x_1 \\ x_2
\end{bmatrix}

&amp;amp;= 

\begin{bmatrix}
1
\end{bmatrix}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{N}^T\mathbf{x} &amp;amp;= \mathbf{e} \\\\ \begin{bmatrix} 1 &amp;amp; -3 \\ \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \end{bmatrix} &amp;amp;= \begin{bmatrix} 1 \end{bmatrix} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1746704903238&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathbf{A}^T\mathbf{x} &amp;amp;\leq \mathbf{b} \\\\
\begin{bmatrix}
1 &amp;amp; 1 \\
\end{bmatrix}

\begin{bmatrix}
x_1 \\ x_2
\end{bmatrix}

&amp;amp;\leq

\begin{bmatrix}
4
\end{bmatrix}

\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{A}^T\mathbf{x} &amp;amp;\leq \mathbf{b} \\\\ \begin{bmatrix} 1 &amp;amp; 1 \\ \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \end{bmatrix} &amp;amp;\leq \begin{bmatrix} 4 \end{bmatrix} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;이차계획문제에 KKT 필요조건을 적용하여 행렬식으로 나타내면 다음과 같다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1746706227588&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathbf{B} \mathbf{X} &amp;amp;= \mathbf{D}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{B} \mathbf{X} &amp;amp;= \mathbf{D} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1746705134564&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}

\begin{bmatrix}
\mathbf{H} &amp;amp; \mathbf{A} &amp;amp; \mathbf{-I}_{\left(2\right)} &amp;amp; \mathbf{0}_{\left(2 \times 1\right)} &amp;amp; \mathbf{N} &amp;amp; -\mathbf{N} \\
\mathbf{A}^T &amp;amp; \mathbf{0}_{\left(1 \times 1\right)} &amp;amp; \mathbf{0}_{\left(1 \times 2\right)} &amp;amp; \mathbf{I}_{\left(1\right)} &amp;amp; \mathbf{0}_{\left(1 \times p\right)} &amp;amp; \mathbf{0}_{\left(1 \times p\right)} \\
\mathbf{N}^T &amp;amp; \mathbf{0}_{\left(p \times 1\right)} &amp;amp; \mathbf{0}_{\left(p \times 2\right)} &amp;amp; \mathbf{0}_{\left(p \times 1\right)} &amp;amp; \mathbf{0}_{\left(p \times p\right)} &amp;amp; \mathbf{0}_{\left(p \times p\right)} \\
\end{bmatrix}

\begin{bmatrix}
\mathbf{x} \\
\mathbf{u} \\
\mathbf{\xi} \\
\mathbf{s} \\
\mathbf{y} \\
\mathbf{z}
\end{bmatrix}

&amp;amp;=

\begin{bmatrix}
\mathbf{-c} \\
\mathbf{b} \\
\mathbf{e}
\end{bmatrix} \\\\


\begin{bmatrix}
2 &amp;amp; 0 &amp;amp; 1 &amp;amp; -1 &amp;amp; 0 &amp;amp; 0 &amp;amp; 1 &amp;amp; -1 \\
0 &amp;amp; 2 &amp;amp; 1 &amp;amp; 0 &amp;amp; -1 &amp;amp; 0 &amp;amp; -3 &amp;amp; 3 \\
1 &amp;amp; 1 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 1 &amp;amp; 0 &amp;amp; 0 \\
1 &amp;amp; -3 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 \\
\end{bmatrix}

\begin{bmatrix}
x_1 \\
x_2 \\
u_1 \\
\xi_1 \\
\xi_2 \\
s_1\\
y_1 \\
z_1
\end{bmatrix}

&amp;amp;=

\begin{bmatrix}
6 \\
6 \\
4 \\
1 
\end{bmatrix}

\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \begin{bmatrix} \mathbf{H} &amp;amp; \mathbf{A} &amp;amp; \mathbf{-I}_{\left(2\right)} &amp;amp; \mathbf{0}_{\left(2 \times 1\right)} &amp;amp; \mathbf{N} &amp;amp; -\mathbf{N} \\ \mathbf{A}^T &amp;amp; \mathbf{0}_{\left(1 \times 1\right)} &amp;amp; \mathbf{0}_{\left(1 \times 2\right)} &amp;amp; \mathbf{I}_{\left(1\right)} &amp;amp; \mathbf{0}_{\left(1 \times p\right)} &amp;amp; \mathbf{0}_{\left(1 \times p\right)} \\ \mathbf{N}^T &amp;amp; \mathbf{0}_{\left(p \times 1\right)} &amp;amp; \mathbf{0}_{\left(p \times 2\right)} &amp;amp; \mathbf{0}_{\left(p \times 1\right)} &amp;amp; \mathbf{0}_{\left(p \times p\right)} &amp;amp; \mathbf{0}_{\left(p \times p\right)} \\ \end{bmatrix} \begin{bmatrix} \mathbf{x} \\ \mathbf{u} \\ \mathbf{\xi} \\ \mathbf{s} \\ \mathbf{y} \\ \mathbf{z} \end{bmatrix} &amp;amp;= \begin{bmatrix} \mathbf{-c} \\ \mathbf{b} \\ \mathbf{e} \end{bmatrix} \\\\ \begin{bmatrix} 2 &amp;amp; 0 &amp;amp; 1 &amp;amp; -1 &amp;amp; 0 &amp;amp; 0 &amp;amp; 1 &amp;amp; -1 \\ 0 &amp;amp; 2 &amp;amp; 1 &amp;amp; 0 &amp;amp; -1 &amp;amp; 0 &amp;amp; -3 &amp;amp; 3 \\ 1 &amp;amp; 1 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 1 &amp;amp; 0 &amp;amp; 0 \\ 1 &amp;amp; -3 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 \\ \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \\ u_1 \\ \xi_1 \\ \xi_2 \\ s_1\\ y_1 \\ z_1 \end{bmatrix} &amp;amp;= \begin{bmatrix} 6 \\ 6 \\ 4 \\ 1 \end{bmatrix} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;심플렉스법을 적용하기 위해 인위변수와 인위가격함수를 도입하여 행렬식로 나타내면 다음과 같다.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1746709710797&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathbf{B} \mathbf{X} + \mathbf{Y} &amp;amp;= \mathbf{D}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{B} \mathbf{X} + \mathbf{Y} &amp;amp;= \mathbf{D} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1746709768085&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}

\begin{bmatrix}
2 &amp;amp; 0 &amp;amp; 1 &amp;amp; -1 &amp;amp; 0 &amp;amp; 0 &amp;amp; 1 &amp;amp; -1 \\
0 &amp;amp; 2 &amp;amp; 1 &amp;amp; 0 &amp;amp; -1 &amp;amp; 0 &amp;amp; -3 &amp;amp; 3 \\
1 &amp;amp; 1 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 1 &amp;amp; 0 &amp;amp; 0 \\
1 &amp;amp; -3 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 \\
\end{bmatrix}

\begin{bmatrix}
X_1 \\
X_2 \\
X_3 \\
X_4 \\
X_5 \\
X_6 \\
X_7 \\
X_8
\end{bmatrix}

+

\begin{bmatrix}
Y_1 \\
Y_2 \\
Y_3 \\
Y_4 
\end{bmatrix}

&amp;amp;=

\begin{bmatrix}
6 \\
6 \\
4 \\
1 
\end{bmatrix}

\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \begin{bmatrix} 2 &amp;amp; 0 &amp;amp; 1 &amp;amp; -1 &amp;amp; 0 &amp;amp; 0 &amp;amp; 1 &amp;amp; -1 \\ 0 &amp;amp; 2 &amp;amp; 1 &amp;amp; 0 &amp;amp; -1 &amp;amp; 0 &amp;amp; -3 &amp;amp; 3 \\ 1 &amp;amp; 1 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 1 &amp;amp; 0 &amp;amp; 0 \\ 1 &amp;amp; -3 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 \\ \end{bmatrix} \begin{bmatrix} X_1 \\ X_2 \\ X_3 \\ X_4 \\ X_5 \\ X_6 \\ X_7 \\ X_8 \end{bmatrix} + \begin{bmatrix} Y_1 \\ Y_2 \\ Y_3 \\ Y_4 \end{bmatrix} &amp;amp;= \begin{bmatrix} 6 \\ 6 \\ 4 \\ 1 \end{bmatrix} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1746858114036&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\omega &amp;amp;= \sum_{i=1}^{n+m+p}Y_i  \\\\
&amp;amp;= Y_1 + Y_2 + Y_3 + Y_4 \\\\
&amp;amp;= -4X_1 -2X_3 + X_4 + X_5 - X_6 + 2X_7 - 2X_8 + 17
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \omega &amp;amp;= \sum_{i=1}^{n+m+p}Y_i \\\\ &amp;amp;= Y_1 + Y_2 + Y_3 + Y_4 \\\\ &amp;amp;= -4X_1 -2X_3 + X_4 + X_5 - X_6 + 2X_7 - 2X_8 + 17 \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;이제 위 이차계획문제를 첨가행렬로 정리하면 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1746859143385&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}

\begin{bmatrix}
2 &amp;amp; 0 &amp;amp; 1 &amp;amp; -1 &amp;amp; 0 &amp;amp; 0 &amp;amp; 1 &amp;amp; -1 &amp;amp; 1 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 6\\
0 &amp;amp; 2 &amp;amp; 1 &amp;amp; 0 &amp;amp; -1 &amp;amp; 0 &amp;amp; -3 &amp;amp; 3 &amp;amp; 0 &amp;amp; 1 &amp;amp; 0 &amp;amp; 0 &amp;amp; 6\\
1 &amp;amp; 1 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 1 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 1 &amp;amp; 0 &amp;amp; 4\\
1 &amp;amp; -3 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 1 &amp;amp; 1\\
-4 &amp;amp; 0 &amp;amp; -2 &amp;amp; 1 &amp;amp; 1 &amp;amp; -1 &amp;amp; 2 &amp;amp; -2 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; \omega-17
\end{bmatrix}

\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \begin{bmatrix} 2 &amp;amp; 0 &amp;amp; 1 &amp;amp; -1 &amp;amp; 0 &amp;amp; 0 &amp;amp; 1 &amp;amp; -1 &amp;amp; 1 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 6\\ 0 &amp;amp; 2 &amp;amp; 1 &amp;amp; 0 &amp;amp; -1 &amp;amp; 0 &amp;amp; -3 &amp;amp; 3 &amp;amp; 0 &amp;amp; 1 &amp;amp; 0 &amp;amp; 0 &amp;amp; 6\\ 1 &amp;amp; 1 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 1 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 1 &amp;amp; 0 &amp;amp; 4\\ 1 &amp;amp; -3 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 1 &amp;amp; 1\\ -4 &amp;amp; 0 &amp;amp; -2 &amp;amp; 1 &amp;amp; 1 &amp;amp; -1 &amp;amp; 2 &amp;amp; -2 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; \omega-17 \end{bmatrix} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;모든 인위변수를 비기저변수로 만들기 위해 심플렉스법을 따라 연산을 4회 수행하면 아래와 같은 첨가행렬을 얻을 수 있다. 이때 인위가격함수의 값은 0이 된다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1746859890211&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}

\begin{bmatrix}
0 &amp;amp; 1 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; \frac{1}{4} &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; \frac{1}{4} &amp;amp; -\frac{1}{4} &amp;amp; \frac{3}{4}\\
0 &amp;amp; 0 &amp;amp; 1 &amp;amp; -\frac{3}{4} &amp;amp; -\frac{1}{4} &amp;amp; -\frac{5}{4} &amp;amp; 0 &amp;amp; 0 &amp;amp; \frac{3}{4} &amp;amp; \frac{1}{4} &amp;amp; -\frac{5}{4} &amp;amp; -\frac{1}{4} &amp;amp; \frac{3}{4}\\
0 &amp;amp; 0 &amp;amp; 0 &amp;amp; \frac{1}{4} &amp;amp; -\frac{1}{4} &amp;amp; \frac{1}{4} &amp;amp; -1 &amp;amp; 1 &amp;amp; -\frac{1}{4} &amp;amp; \frac{1}{4} &amp;amp; \frac{1}{4} &amp;amp; \frac{1}{4} &amp;amp; \frac{5}{4}\\
1 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; \frac{3}{4} &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; \frac{3}{4} &amp;amp; \frac{1}{4} &amp;amp; \frac{13}{4}\\
0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 1 &amp;amp; 1 &amp;amp; 1 &amp;amp; 1 &amp;amp; \omega
\end{bmatrix}

\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \begin{bmatrix} 0 &amp;amp; 1 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; \frac{1}{4} &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; \frac{1}{4} &amp;amp; -\frac{1}{4} &amp;amp; \frac{3}{4}\\ 0 &amp;amp; 0 &amp;amp; 1 &amp;amp; -\frac{3}{4} &amp;amp; -\frac{1}{4} &amp;amp; -\frac{5}{4} &amp;amp; 0 &amp;amp; 0 &amp;amp; \frac{3}{4} &amp;amp; \frac{1}{4} &amp;amp; -\frac{5}{4} &amp;amp; -\frac{1}{4} &amp;amp; \frac{3}{4}\\ 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; \frac{1}{4} &amp;amp; -\frac{1}{4} &amp;amp; \frac{1}{4} &amp;amp; -1 &amp;amp; 1 &amp;amp; -\frac{1}{4} &amp;amp; \frac{1}{4} &amp;amp; \frac{1}{4} &amp;amp; \frac{1}{4} &amp;amp; \frac{5}{4}\\ 1 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; \frac{3}{4} &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; \frac{3}{4} &amp;amp; \frac{1}{4} &amp;amp; \frac{13}{4}\\ 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 1 &amp;amp; 1 &amp;amp; 1 &amp;amp; 1 &amp;amp; \omega \end{bmatrix} \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;위 결과로부터 최적해와 해당 최적해에서 가격함수의 값을 도출하면 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1746860859195&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}

x_1 &amp;amp;= \frac{13}{4},~~~~x_2 = \frac{3}{4} \\\\
u_1 &amp;amp;= \frac{3}{4},~~~~\xi_1 = 0,~~~~\xi_2 = 0,~~~~s_1 = 0,~~~~y_1 = 0,~~~~z_1 = \frac{5}{4}

\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} x_1 &amp;amp;= \frac{13}{4},~~~~x_2 = \frac{3}{4} \\\\ u_1 &amp;amp;= \frac{3}{4},~~~~\xi_1 = 0,~~~~\xi_2 = 0,~~~~s_1 = 0,~~~~y_1 = 0,~~~~z_1 = \frac{5}{4} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1746861282644&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
f &amp;amp;= \left( x_1-3 \right)^2 + \left( x_2-3 \right)^2 \\\\
&amp;amp;= \left( \frac{13}{4}-3 \right)^2 + \left( \frac{3}{4}-3 \right)^2 \\\\
\therefore~~f &amp;amp;= \frac{41}{8}

\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} f &amp;amp;= \left( x_1-3 \right)^2 + \left( x_2-3 \right)^2 \\\\ &amp;amp;= \left( \frac{13}{4}-3 \right)^2 + \left( \frac{3}{4}-3 \right)^2 \\\\ \therefore~~f &amp;amp;= \frac{41}{8} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;[함께 읽으면 좋은 페이지]&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1755924691429&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 선형계획법&quot; data-og-description=&quot;1. 선형계획법 목적함수와 제약함수가 설계변수에 대하여 선형함수인 최적설계문제를 선형계획문제(linear programming problem)라고 한다. 선형계획문제의 모든 목적함수 또는 가격함수(cost function)와 &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/317&quot; data-og-url=&quot;https://vedacube.tistory.com/317&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/FC7Rn/hyZDb7ZX3Q/ueAqWqMmmt0COmtwtH467k/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bEBSaU/hyZC3B8IYc/RsZTaive1qUP5KNUgtF2C0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bNSHPS/hyZyjUaQZu/e7KkfymjRZOpF3Spkfnbek/img.png?width=1903&amp;amp;height=1924&amp;amp;face=0_0_1903_1924&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/317&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/317&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/FC7Rn/hyZDb7ZX3Q/ueAqWqMmmt0COmtwtH467k/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bEBSaU/hyZC3B8IYc/RsZTaive1qUP5KNUgtF2C0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bNSHPS/hyZyjUaQZu/e7KkfymjRZOpF3Spkfnbek/img.png?width=1903&amp;amp;height=1924&amp;amp;face=0_0_1903_1924');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 선형계획법&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 선형계획법 목적함수와 제약함수가 설계변수에 대하여 선형함수인 최적설계문제를 선형계획문제(linear programming problem)라고 한다. 선형계획문제의 모든 목적함수 또는 가격함수(cost function)와&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1753437957667&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 파이썬 기반 이차계획문제 알고리즘 qpsolvers.solve_qp&quot; data-og-description=&quot;1. qpsolvers qpsolvers는 파이썬 기반의 오픈소스 패키지로, 이차계획문제 풀이를 위한 다양한 알고리즘을 제공한다. 파이썬 기반의 연산 패키지인 NumPy와도 호환이 가능해 복잡하게 형식을 정의할 &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/103&quot; data-og-url=&quot;https://vedacube.tistory.com/103&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/Mm0Xt/hyZnjsTaxb/ggFpXCgXl4XL6ZnjPsfCgK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/iIhH0/hyZrl3wYZi/IJ5Wsxv36IChsywtaWbfDK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/coPoGk/hyZroFXkiC/uLdsVmIGEUmwXduDe5wmB1/img.png?width=1821&amp;amp;height=1854&amp;amp;face=0_0_1821_1854&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/103&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/103&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/Mm0Xt/hyZnjsTaxb/ggFpXCgXl4XL6ZnjPsfCgK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/iIhH0/hyZrl3wYZi/IJ5Wsxv36IChsywtaWbfDK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/coPoGk/hyZroFXkiC/uLdsVmIGEUmwXduDe5wmB1/img.png?width=1821&amp;amp;height=1854&amp;amp;face=0_0_1821_1854');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 파이썬 기반 이차계획문제 알고리즘 qpsolvers.solve_qp&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. qpsolvers qpsolvers는 파이썬 기반의 오픈소스 패키지로, 이차계획문제 풀이를 위한 다양한 알고리즘을 제공한다. 파이썬 기반의 연산 패키지인 NumPy와도 호환이 가능해 복잡하게 형식을 정의할&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1755924659314&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 제약조건 문제 수치해법(3): 순차 이차계획법 SQP&quot; data-og-description=&quot;1. 순차 이차계획법 앞서 다룬 순차 선형계획법은 일반적인 제약조건 최적화 문제를 풀이를 위한 단순하고 직관적인 알고리즘이지만, 상황에 따라 정확한 최적해에 수렴하지 않는 등 강건성이 &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/80&quot; data-og-url=&quot;https://vedacube.tistory.com/80&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bWR54R/hyZzGBt7TQ/4aZLQUAdNt13443K1ZK5H1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/p6YmT/hyZDKCe8Y7/nfdeF4Uj5cyKE6CyL7bM70/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/80&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/80&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bWR54R/hyZzGBt7TQ/4aZLQUAdNt13443K1ZK5H1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/p6YmT/hyZDKCe8Y7/nfdeF4Uj5cyKE6CyL7bM70/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 제약조건 문제 수치해법(3): 순차 이차계획법 SQP&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 순차 이차계획법 앞서 다룬 순차 선형계획법은 일반적인 제약조건 최적화 문제를 풀이를 위한 단순하고 직관적인 알고리즘이지만, 상황에 따라 정확한 최적해에 수렴하지 않는 등 강건성이&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;color: #333333;&quot;&gt;- Arora, J. S. (2016).&amp;nbsp;&lt;i&gt;Introduction to optimum design&lt;/i&gt;. Elsevier.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Optimum Design</category>
      <category>공학</category>
      <category>최적설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/320</guid>
      <comments>https://vedacube.tistory.com/320#entry320comment</comments>
      <pubDate>Fri, 27 Jun 2025 18:00:42 +0900</pubDate>
    </item>
    <item>
      <title>파이썬 | 사용자 정의 함수(3): 지역변수와 전역변수</title>
      <link>https://vedacube.tistory.com/323</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/358&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 파이썬&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/347&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 기본 기능과 규칙&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 변수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.1. 기본자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/356&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1.1. 정수형, 실수형, 논리형, 문자열&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.2. 복합자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/149&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.1. 리스트, 튜플&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/355&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.2. 딕셔너리, 세트&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.3. 자료형 메소드&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/359&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 리스트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/361&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.2. 딕셔너리 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/362&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.3. 세트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/349&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.4. 객체 복사&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 조건문과 반복문&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/328&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. if-elif-else, while, for&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/234&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. range, enumerate, zip&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/165&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.3. break, continue&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 예외 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/295&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. try-except&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 사용자 정의 함수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/145&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. def-return&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/137&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 매개변수와 전달인자&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/323&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 지역변수와 전역변수 ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 모듈, 패키지, 라이브러리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/322&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. impoart-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 파일 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/151&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 메모장 파일 쓰고 읽기&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/402&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. with-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 객체 지향 프로그래밍&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/152&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 클래스와 인스턴스&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/350&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 속성과 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
  &lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/161&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 클래스 상속&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1. 지역변수&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;3994&quot; data-origin-height=&quot;2643&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/qk12j/btsNYpKvseP/hGOntjDATtRitrw5fIEOM1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/qk12j/btsNYpKvseP/hGOntjDATtRitrw5fIEOM1/img.png&quot; data-alt=&quot;지역 변수&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/qk12j/btsNYpKvseP/hGOntjDATtRitrw5fIEOM1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fqk12j%2FbtsNYpKvseP%2FhGOntjDATtRitrw5fIEOM1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;627&quot; height=&quot;415&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;3994&quot; data-origin-height=&quot;2643&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;지역 변수&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;변수는 정의된 위치에 따라 변수 이름이 영향을 미치는 범위가 결정된다. &lt;b&gt;사용자 정의 함수 내에서 정의된 변수&lt;/b&gt;를 지역변수(local variable)라고 하며, 해당 함수 내에서만 변수 이름이 통용된다. 즉, 아래 예시와 같이 &lt;b&gt;서로 다른 함수 내에서 정의된 두 변수가 같은 이름을 가지더라도 서로에게 영향을 주지 않는다.&lt;/b&gt; 이러한 지역변수 기능은 사용자 정의 함수 내부에서 예기치 않은 연산이 수행되더라도 전체 프로그램에 주는 영향을 최소화할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1746173490242&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;def newFunc1(num1, num2):
    result = num1 * num2	# 지역변수1
    print(result)

def newFunc2(num1, num2):
    result = num1 // num2	# 지역변수2
    print(result)

newFunc1(3, 5)
newFunc2(7, 11)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2. 전역변수&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2.1. 전역변수 호출&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;4152&quot; data-origin-height=&quot;2777&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c6dveX/btsNW6Su5VJ/FL9HGMOctjhCtdqYaeBD21/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c6dveX/btsNW6Su5VJ/FL9HGMOctjhCtdqYaeBD21/img.png&quot; data-alt=&quot;전역 변수(1)&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c6dveX/btsNW6Su5VJ/FL9HGMOctjhCtdqYaeBD21/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc6dveX%2FbtsNW6Su5VJ%2FFL9HGMOctjhCtdqYaeBD21%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;651&quot; height=&quot;435&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;4152&quot; data-origin-height=&quot;2777&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;전역 변수(1)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp;사용자 정의 함수 밖에서 변수를 정의&lt;/b&gt;하면 모든 함수를 포함한 전체 프로그램에서 변수 이름이 통용되는데, 이를 전역변수(global variable)라고 한다. 아래 예시와 같이 &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;전역변수가 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;서로 다른 함수 내에서 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;새롭게 정의되지 않고 단순히 호출되는 경우&lt;/b&gt;에는 변수 이름이 통용되어 함수 밖에서와 동일한 값을 출력한다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1747141502614&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;def newFunc1(num1, num2):
    result = num1 * num2	# 지역변수1
    print(result, count)

def newFunc2(num1, num2):
    result = num1 // num2	# 지역변수2
    print(result, count)

count = 0			# 전역변수

newFunc1(3, 5)
newFunc2(7, 11)
print(count)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;2.2. 전역변수와 동일한 이름의 지역변수&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;4108&quot; data-origin-height=&quot;3348&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/wzeFV/btsNWhHjSLU/WnCVo2cPsGw5OFliPLC34k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/wzeFV/btsNWhHjSLU/WnCVo2cPsGw5OFliPLC34k/img.png&quot; data-alt=&quot;전역 변수(2)&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/wzeFV/btsNWhHjSLU/WnCVo2cPsGw5OFliPLC34k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FwzeFV%2FbtsNWhHjSLU%2FWnCVo2cPsGw5OFliPLC34k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;656&quot; height=&quot;535&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;4108&quot; data-origin-height=&quot;3348&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;전역 변수(2)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;만약 &lt;b&gt;사용자 정의 함수 내에서 전역변수와 동일한 이름으로 변수를 선언한 뒤 새로운 값을 할당하면 새로운 지역변수로 정의된다. &lt;/b&gt;이 경우에는 전역변수와 지역변수의 이름이 동일하더라도 서로 다른 변수로 취급되기 때문에 영향을 주고받지 않는다. 사용자 정의 함수의 연산으로 전역 변수에 저장된 값을 갱신하고 싶다면 전역변수를 해당 함수의 전달 인자로 입력한 뒤, 함수 내에서 연산한 결과를 return 명령문으로 반환하여 전역변수에 다시 저장하는 방법이 있겠다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1746173621897&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;def newFunc1(num1, num2):
    result = num1 * num2
    count = 1			# 지역변수a
    print(result, count)

def newFunc2(num1, num2):
    result = num1 // num2
    count = 2			# 지역변수b
    print(result, count)

count = 0			# 전역변수

newFunc1(3, 5)
newFunc2(7, 11)
print(count)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2.3. global 명령문&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;4052&quot; data-origin-height=&quot;2362&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bXhxBy/btsNYY6K2nE/KuO5C4AqutJBYTMqAsm2bk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bXhxBy/btsNYY6K2nE/KuO5C4AqutJBYTMqAsm2bk/img.png&quot; data-alt=&quot;전역 변수(3)&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bXhxBy/btsNYY6K2nE/KuO5C4AqutJBYTMqAsm2bk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbXhxBy%2FbtsNYY6K2nE%2FKuO5C4AqutJBYTMqAsm2bk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;644&quot; height=&quot;375&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;4052&quot; data-origin-height=&quot;2362&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;전역 변수(3)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;전역변수를 사용자 정의 함수에 전달 인자로 전달하는 것이 아니라, &lt;b&gt;사용자 정의 함수 내에서 전역변수에 직접 영향을 주고 싶다면 함수 내에서 global 명령문을 사용하여 전역변수와 동일한 이름으로 변수를 정의&lt;/b&gt;하면 된다. 이는 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;사용자 정의 함수&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;외부에 정의된 전역변수를 그대로 가져와 사용하겠다는 것을 의미한다. 한편 전역변수가 리스트나 딕셔너리와 같이 여러 값을 다루는 자료형을 저장하고 있다면 global 명령문을 선언하지 않더라도 사용자 정의 함수 내에서 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; letter-spacing: 0px;&quot;&gt;전역변수에 영향을 줄 수 있다. 따라서 해당 자료형으로 지역변수를 다룰 때에는 특히 주의해야 한다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1746173919782&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;def newFunc1(num1, num2):
    result = num1 * num2
    global count	# 전역변수
    count += 1
    print(result, count)

def newFunc2(num1, num2):
    result = num1 // num2
    global count	# 전역변수
    count += 1
    print(result, count)

count = 0		# 전역변수

newFunc1(3, 5)
newFunc2(7, 11)
print(count)&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1766060234861&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;파이썬 | 모듈, 패키지, 라이브러리: import-as&quot; data-og-description=&quot;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/322&quot; data-og-url=&quot;https://vedacube.tistory.com/322&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cPeZ80/hyZP2vMF6c/dGXLUD3cKq2Khv9ly4ugi1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/z2PCU/hyZOFPYPdr/PpvYiKIe8y8kKMVaqfuKs1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/ceLYDS/hyZP6kD45a/5ryogW4dlBOk39wU4Y3Ba0/img.png?width=3193&amp;amp;height=1712&amp;amp;face=0_0_3193_1712&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/322&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/322&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cPeZ80/hyZP2vMF6c/dGXLUD3cKq2Khv9ly4ugi1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/z2PCU/hyZOFPYPdr/PpvYiKIe8y8kKMVaqfuKs1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/ceLYDS/hyZP6kD45a/5ryogW4dlBOk39wU4Y3Ba0/img.png?width=3193&amp;amp;height=1712&amp;amp;face=0_0_3193_1712');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;파이썬 | 모듈, 패키지, 라이브러리: import-as&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;- 박진수. (2019). 바로 쓰는 파이썬. 서울대학교출판문화원.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Programming/Python</category>
      <category>파이썬</category>
      <category>프로그래밍</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/323</guid>
      <comments>https://vedacube.tistory.com/323#entry323comment</comments>
      <pubDate>Fri, 20 Jun 2025 18:00:34 +0900</pubDate>
    </item>
    <item>
      <title>파이썬 | 사용자 정의 함수(2): 매개변수와 전달인자</title>
      <link>https://vedacube.tistory.com/137</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/358&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 파이썬&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/347&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 기본 기능과 규칙&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 변수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.1. 기본자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/356&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1.1. 정수형, 실수형, 논리형, 문자열&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.2. 복합자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/149&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.1. 리스트, 튜플&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/355&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.2. 딕셔너리, 세트&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.3. 자료형 메소드&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/359&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 리스트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/361&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.2. 딕셔너리 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/362&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.3. 세트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/349&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.4. 객체 복사&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 조건문과 반복문&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/328&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. if-elif-else, while, for&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/234&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. range, enumerate, zip&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/165&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.3. break, continue&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 예외 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/295&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. try-except&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 사용자 정의 함수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/145&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. def-return&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/137&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 매개변수와 전달인자 ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/323&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 지역변수와 전역변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 모듈, 패키지, 라이브러리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/322&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. impoart-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 파일 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/151&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 메모장 파일 쓰고 읽기&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/402&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. with-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 객체 지향 프로그래밍&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/152&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 클래스와 인스턴스&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/350&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 속성과 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
  &lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/161&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 클래스 상속&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: left;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 매개변수&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;5245&quot; data-origin-height=&quot;577&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/X9XOr/btsNTDpJ8t2/fbihQm7Q2tbRWtEMQ3w5r1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/X9XOr/btsNTDpJ8t2/fbihQm7Q2tbRWtEMQ3w5r1/img.png&quot; data-alt=&quot;매개변수&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/X9XOr/btsNTDpJ8t2/fbihQm7Q2tbRWtEMQ3w5r1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FX9XOr%2FbtsNTDpJ8t2%2FfbihQm7Q2tbRWtEMQ3w5r1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;725&quot; height=&quot;80&quot; data-origin-width=&quot;5245&quot; data-origin-height=&quot;577&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;매개변수&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;매개변수(parameter)는&lt;b&gt; 함수를 정의할 때 괄호 안에 선언하는 변수&lt;/b&gt;로, 함수가 호출될 때 매개변수로 선언한 변수의 개수만큼 값을 받아들이도록 지정한다. &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;함수를 호출할 때 괄호 안에 입력한 값은 매개변수로 정의된 변수에 저장되어 함수 내부로 전달된다. 매개변수는 크게 ▲위치 매개변수와 &lt;span style=&quot;color: #333333;&quot;&gt;▲&lt;/span&gt;키워드 매개변수로 구분할 수 있다. &lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1.1. 위치 매개변수&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;7027&quot; data-origin-height=&quot;598&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/yIJs9/btsNUP4BvRh/59kZTMSqcorilx5mrQxO8K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/yIJs9/btsNUP4BvRh/59kZTMSqcorilx5mrQxO8K/img.png&quot; data-alt=&quot;위치 매개변수&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/yIJs9/btsNUP4BvRh/59kZTMSqcorilx5mrQxO8K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyIJs9%2FbtsNUP4BvRh%2F59kZTMSqcorilx5mrQxO8K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;825&quot; height=&quot;70&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;7027&quot; data-origin-height=&quot;598&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;위치 매개변수&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;위치 매개변수는 &lt;b&gt;기본값 없이 단일한 변수의 이름으로 정의&lt;/b&gt;되며, &lt;b&gt;&lt;span style=&quot;color: #333333;&quot;&gt;기본값이 설정되어 있지 않기 때문에 함수를 호출할 때 &lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&lt;b&gt;반드시 위치&amp;nbsp; 매개변수의 개수만큼은 값을 할당&lt;/b&gt;해야 한다. 함수에 할당된 매개변수보다 많거나 적게 값을 할당하면 오류가 발생한다. 세 개의 위치 매개변수를 할당한 사용자 정의 함수의 예시는 다음과 같다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;def positional_parameter(num1, num2, num3):	# 위치 매개변수 3개
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;result = (num1 * 10) + num2 + (num3 * 0.1)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(result)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
positional_parameter(1, 1, 1)
positional_parameter(3, 1, 2)&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1.2. 키워드 매개변수&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;6763&quot; data-origin-height=&quot;614&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/svM5V/btsNUdSvePi/JHG7gpcqMlisbCgHbN8eKk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/svM5V/btsNUdSvePi/JHG7gpcqMlisbCgHbN8eKk/img.png&quot; data-alt=&quot;키워드 매개변수&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/svM5V/btsNUdSvePi/JHG7gpcqMlisbCgHbN8eKk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FsvM5V%2FbtsNUdSvePi%2FJHG7gpcqMlisbCgHbN8eKk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;827&quot; height=&quot;75&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;6763&quot; data-origin-height=&quot;614&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;키워드 매개변수&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;키워드 매개변수는 &lt;b&gt;변수의 이름과 기&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&lt;b&gt;본값의 쌍으로 정의되는 매개변수&lt;/b&gt;이다. &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;기본값이 설정되어 있으므로 함수를 호출할 때 기본값이 아닌 새로운 값을 할당하는 경우가 아니라면 할당할 필요는 없다. 새로운 값을 할당하고자 한다면&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;키워드 매개변수를 정의할 때와 마찬가지로 괄호 안에 변수의 이름과 새로운 값의 쌍으로 입력한다. &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;키워드 매개변수를 변수의 이름과 새로운 값의 쌍으로 입력한다면, 키워드 매개변수 사이의 순서는 상관 없으나, &lt;b&gt;위치 매개변수가 키워드 매개변수보다 항상 앞에 배치&lt;/b&gt;되어야 한다. &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;세&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt; 개의 위치 매개변수와 두 개의 키워드 매개변수를 할당한 사용자 정의 함수의 예시는 다음과 같다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;# 위치 매개변수 3개 + 키워드 매개변수 2개
def keyword_parameter(num1, num2, num3, cof1=10, cof2=0.1):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;result = (num1 * cof1) + num2 + (num3* cof2)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(result)

keyword_parameter(1, 1, 1)				# 키워드 매개변수의 기본값 사용
keyword_parameter(3, 1, 2, cof1=100, cof2=0.01)		# 키워드 매개변수에 새로운 값 할당
keyword_parameter(3, 1, 2, cof2=0.01, cof1=100)		# 키워드 매개변수는 위치와 무관&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1.3. 곱하기 단항 연산자&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;함수에 할당된 매개변수의 위치만 잘 지킨다면, 아래 예시처럼 키워드 매개변수 또한 위치 매개변수처럼 변수의 이름 없이 값만 입력하는 것이 가능하다. 하지만 &lt;b&gt;키워드 매개변수 자리에는 변수의 이름과 새로운 값의 쌍으로만 입력하도록 강제&lt;/b&gt;하고 싶다면 괄호 안에 곱하기 단항 연산자를 변수처럼 끼워넣으면 된다. 곱하기 단항 연산자 뒤에 위치한 매개변수로는 오직 키워드 매개변수만 할당할 수 있으며, 입력 형식 또한 변수의 이름과 새로운 값의 쌍으로 강제된다.&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;def example1(num1, num2, num3, cof1=10, cof2=0.1):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;result = (num1 * cof1) + num2 + (num3* cof2)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(result)

# 곱하기 단항 연산자로 키워드 매개변수 형식 강제
def example2(num1, num2, num3, *, cof1=10, cof2=0.1):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;result = (num1 * cof1) + num2 + (num3* cof2)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(result)

example1(1, 1, 1, 100, 0.01)
example2(3, 1, 2, cof1 = 100, cof2 = 0.01)		# 키워드 매개변수 형식 강제&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1.4. 튜플 패킹 단항 연산자&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;6232&quot; data-origin-height=&quot;1359&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/BaCQT/btsNVCDrZyY/vAGb11xkTImXWYJrbXY48k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/BaCQT/btsNVCDrZyY/vAGb11xkTImXWYJrbXY48k/img.png&quot; data-alt=&quot;튜플 패킹 단항 연산자&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/BaCQT/btsNVCDrZyY/vAGb11xkTImXWYJrbXY48k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FBaCQT%2FbtsNVCDrZyY%2FvAGb11xkTImXWYJrbXY48k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;823&quot; height=&quot;179&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;6232&quot; data-origin-height=&quot;1359&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;튜플 패킹 단항 연산자&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;앞선 예시들은 함수를 정의하는 단계에서 위치 매개변수의 개수가 정해져있었다. 만약 사용자로부터 &lt;b&gt;임의의 개수의 값을&amp;nbsp;받아 처리&lt;/b&gt;하고자 한다면, 함수를 정의할 때 &lt;b&gt;매개변수 앞에 곱하기 단항 연산자(*)&lt;/b&gt;를 붙이면 된다.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;아래 예시와 같이 &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;사용자가 함수를 호출할 때 괄호 안에 여러 개의 값을 입력하더라도, &lt;b&gt;해당 값들이 하나의 매개변수에 튜플로 묶여 함수 내부로 전달된다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;def num_to_str(*numbers):	# 튜플 패킹
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;result = []
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for number in numbers:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;result.append(str(number))
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(result)

num_to_str(1)
num_to_str(1, 2, 3, 4, 5)
num_to_str(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1.5. 딕셔너리 패킹 단항 연산자&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;6472&quot; data-origin-height=&quot;1360&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vfVXQ/btsNUdY9NSa/F9Q8MjPnJwfjCL5KqFk3m1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vfVXQ/btsNUdY9NSa/F9Q8MjPnJwfjCL5KqFk3m1/img.png&quot; data-alt=&quot;딕셔너리 패킹 단항 연산자&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vfVXQ/btsNUdY9NSa/F9Q8MjPnJwfjCL5KqFk3m1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FvfVXQ%2FbtsNUdY9NSa%2FF9Q8MjPnJwfjCL5KqFk3m1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;855&quot; height=&quot;180&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;6472&quot; data-origin-height=&quot;1360&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;딕셔너리 패킹 단항 연산자&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;키워드 매개변수도 마찬가지로 &lt;b&gt;임의의 개수의 값을 받아 처리&lt;/b&gt;할 수 있다. 함수를 정의할 때 &lt;b&gt;매개변수 앞에 제곱 단항 연산자(**)&lt;/b&gt;를 붙이면 된다. 아래 예시와 같이 사용자가 함수를 호출할 때 괄호 안에 키와 값의 쌍으로 이루어진 값들을 입력하면, &lt;b&gt;해당 쌍들을 하나의 매개변수에 딕셔너리로 묶어 함수 내부로 전달한다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;def item_info(name, specification, **info):	# 딕셔너리 패킹
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print('----------')
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print('이름: ', name)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print('규격: ', specification)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for key in info:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(f'{key}: {info[key]}')

item_info('볼트', 'M4')
item_info('너트', 'M3', 재질='스테인리스')
item_info('와셔', 'M6', 재질='철', 수량=100)&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1.6. *args, **kwargs&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;7199&quot; data-origin-height=&quot;1410&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bJ3Dnt/btsNUR9aPGT/UUQK2geaUTGIbybn9ioDN0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bJ3Dnt/btsNUR9aPGT/UUQK2geaUTGIbybn9ioDN0/img.png&quot; data-alt=&quot;*args, **kwargs&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bJ3Dnt/btsNUR9aPGT/UUQK2geaUTGIbybn9ioDN0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbJ3Dnt%2FbtsNUR9aPGT%2FUUQK2geaUTGIbybn9ioDN0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;845&quot; height=&quot;166&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;7199&quot; data-origin-height=&quot;1410&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;*args, **kwargs&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;위와 같은 형태의 매개변수는 다른 사용자가 정의한 함수의 문서를 확인할 때 자주 발견할 수 있는데, 이는 함수가 임의 개수의 위치 매개변수와 임의 개수의 키워드 매개변수를 할당 받는다는 것을 의미한다. 이처럼 튜플 패킹 단항 연산자와 딕셔너리 패킹 단항 연산자를 사용하면&amp;nbsp;다양한 값을 처리할 수 있는 유연한 함수를 만들 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1747114806292&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;def newFunc(*args, **kwargs): 	# 튜플 패킹, 딕셔너리 패킹
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for i, arg in enumerate(args):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(f'위치 전달인자 {i} = {arg}')
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for key in kwargs:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(f'키워드 전달인자 {key} = {kwargs[key]}')
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
newFunc(1, 2, 3, 4, 5, cof1=10, cof2=0.1)&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: left;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 전달인자&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;4253&quot; data-origin-height=&quot;594&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bRuy2t/btsNTag5pPm/vcB7pVc2Ev9oADpamhpXUK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bRuy2t/btsNTag5pPm/vcB7pVc2Ev9oADpamhpXUK/img.png&quot; data-alt=&quot;전달인자&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bRuy2t/btsNTag5pPm/vcB7pVc2Ev9oADpamhpXUK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbRuy2t%2FbtsNTag5pPm%2FvcB7pVc2Ev9oADpamhpXUK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;573&quot; height=&quot;80&quot; data-origin-width=&quot;4253&quot; data-origin-height=&quot;594&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;전달인자&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;전달인자(argument)는 &lt;b&gt;함수를 호출할 때 괄호 안에 입력하는 값&lt;/b&gt;으로, 함수를 정의할 때 할당한 매개변수를 통해 함수 내부로 전달된다. 매개변수와 마찬가지로, 전달인자는 크게 ▲위치 전달인자와 ▲키워드 전달인자로 구분할 수 있으며, 각 전달인자별로 함수에 값을 입력하는 방법은 앞선 예시에서 다룬 바와 동일하다. 다른 사용자가 정의한 사용자 정의 함수를 사용하는 경우에는 문서를 통해 어떤 매개변수가 위치 매개변수 혹은 키워드 매개변수인지 확인하고, 이&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;에 맞게 전달인자를 입력해야 한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2.1. 튜플 언패킹 단항 연산자&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;5885&quot; data-origin-height=&quot;2255&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pmOej/btsNVhts1Yb/FbYXf20BA6VWFXZ1WIrzg1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pmOej/btsNVhts1Yb/FbYXf20BA6VWFXZ1WIrzg1/img.png&quot; data-alt=&quot;튜플 언패킹 단항 연산자&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pmOej/btsNVhts1Yb/FbYXf20BA6VWFXZ1WIrzg1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpmOej%2FbtsNVhts1Yb%2FFbYXf20BA6VWFXZ1WIrzg1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;795&quot; height=&quot;305&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;5885&quot; data-origin-height=&quot;2255&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;튜플 언패킹 단항 연산자&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;b&gt;곱하기 단항 연산자(*)&lt;/b&gt;가 매개변수가 아닌 전달인자 앞에 붙을 경우에는&lt;b&gt; 해당 전달인자에 담긴 리스트 혹은 튜플의 값들을 풀어 각 매개변수에 튜플 할당&lt;/b&gt;한다. 이때 풀어진 값들의 개수는 반드시 해당 함수의 위치 매개변수 개수와 같거나 적어야 한다. 튜플 언패킹으로 할당된 값의 개수가 매개변수 개수보다 적을 경우에는 아래 예시와 같이 쉼표로 구분하여 위치 전달인자를&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; 추가할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1747114796083&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;def decimal_cof(num1, num2, num3):
    result = (num1 * 10) + num2 + (num3 * 0.1)
    print(result)

example_list = [1, 1, 1]    
decimal_cof(*example_list)		# 튜플 언패킹

example_tuple = (3, 1)
decimal_cof(*example_tuple, 2)&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2.2. 딕셔너리 언패킹 단항 연산자&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;6563&quot; data-origin-height=&quot;2212&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ApLeR/btsNWstHCSV/ohLiNyhfISZJlGPtKiLKX1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ApLeR/btsNWstHCSV/ohLiNyhfISZJlGPtKiLKX1/img.png&quot; data-alt=&quot;딕셔너리 언패킹 단항 연산자&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ApLeR/btsNWstHCSV/ohLiNyhfISZJlGPtKiLKX1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FApLeR%2FbtsNWstHCSV%2FohLiNyhfISZJlGPtKiLKX1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;845&quot; height=&quot;285&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;6563&quot; data-origin-height=&quot;2212&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;딕셔너리 언패킹 단항 연산자&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;b&gt;제곱 단항 연산자(**)&lt;/b&gt;가 전달인자 앞에 붙을 경우에는 &lt;b&gt;해당 전달인자에 담긴 딕셔너리의 키와 값의 쌍들을 풀어 각 매개변수에 할당&lt;/b&gt;한다. 이때 풀어진 쌍들의 개수는 반드시 해당 함수의 키워드 매개변수 개수와 같거나 적어야 하며, 매개변수에 이미 할당된 키값이 있다면 풀어진 쌍들의 키값이 일치해야 이에 상응하는 기본값이 새로운 값으로 갱신된다.&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;def item_info(name=None, specification=None, material=None, quantity=0):
    print('----------')
    print('이름: ', name)
    print('규격: ', specification)
    print('재질: ', material)
    print('수량: ', quantity)
    
info = dict(name='볼트', specification='M4', material='스테인리스', quantity=50)
item_info(**info)	# 딕셔너리 언패킹&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1766060192787&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;파이썬 | 사용자 정의 함수(3): 지역변수와 전역변수&quot; data-og-description=&quot;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/323&quot; data-og-url=&quot;https://vedacube.tistory.com/323&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bFXPUO/hyZPPQZYXk/Kf6DvfB0D6rWe1v8hCGBkk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cgmSOw/hyZPoHeoKj/8qrU925KPFwXSkyhw7xSFk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/Eldnx/hyZP3Id9M7/BSFO1Olqr2gciLV5IXxlu0/img.png?width=4108&amp;amp;height=3348&amp;amp;face=0_0_4108_3348&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/323&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/323&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bFXPUO/hyZPPQZYXk/Kf6DvfB0D6rWe1v8hCGBkk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cgmSOw/hyZPoHeoKj/8qrU925KPFwXSkyhw7xSFk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/Eldnx/hyZP3Id9M7/BSFO1Olqr2gciLV5IXxlu0/img.png?width=4108&amp;amp;height=3348&amp;amp;face=0_0_4108_3348');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;파이썬 | 사용자 정의 함수(3): 지역변수와 전역변수&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;- 박진수. (2019). 바로 쓰는 파이썬. 서울대학교출판문화원.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Programming/Python</category>
      <category>파이썬</category>
      <category>프로그래밍</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/137</guid>
      <comments>https://vedacube.tistory.com/137#entry137comment</comments>
      <pubDate>Fri, 13 Jun 2025 18:00:11 +0900</pubDate>
    </item>
    <item>
      <title>파이썬 | 사용자 정의 함수(1): def-return</title>
      <link>https://vedacube.tistory.com/145</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/358&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 파이썬&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/347&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 기본 기능과 규칙&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 변수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.1. 기본자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/356&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1.1. 정수형, 실수형, 논리형, 문자열&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.2. 복합자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/149&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.1. 리스트, 튜플&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/355&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.2. 딕셔너리, 세트&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.3. 자료형 메소드&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/359&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 리스트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/361&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.2. 딕셔너리 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/362&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.3. 세트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/349&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.4. 객체 복사&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 조건문과 반복문&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/328&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. if-elif-else, while, for&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/234&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. range, enumerate, zip&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/165&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.3. break, continue&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 예외 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/295&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. try-except&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 사용자 정의 함수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/145&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. def-return ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/137&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 매개변수와 전달인자&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/323&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 지역변수와 전역변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 모듈, 패키지, 라이브러리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/322&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. impoart-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 파일 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/151&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 메모장 파일 쓰고 읽기&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/402&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. with-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 객체 지향 프로그래밍&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/152&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 클래스와 인스턴스&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/350&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 속성과 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/161&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 클래스 상속&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: left;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 내장 함수&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3272&quot; data-origin-height=&quot;860&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/PprNs/btsNFUMb0LM/RKg7UoPvt15S4MthlQTzWk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/PprNs/btsNFUMb0LM/RKg7UoPvt15S4MthlQTzWk/img.png&quot; data-alt=&quot;내장 함수&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/PprNs/btsNFUMb0LM/RKg7UoPvt15S4MthlQTzWk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FPprNs%2FbtsNFUMb0LM%2FRKg7UoPvt15S4MthlQTzWk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;628&quot; height=&quot;165&quot; data-origin-width=&quot;3272&quot; data-origin-height=&quot;860&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;내장 함수&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;함수는 &lt;b&gt;일련의 명령문들이 묶여 특정한 명령을 실행하는 단위&lt;/b&gt;를 의미한다. 파이썬에서는 특정한 기능을 담당하는 다양한 함수들을 기본적으로 제공하고 있으며, 이를 &lt;b&gt;내장 함수&lt;/b&gt;라고 한다. 함수의 이름을 호출하고, 괄호 안에 적절한 전달인자를 입력하는 &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;것으로 기능을 불러올 수 있으므로, 필요할 때마다 임의의 함수를 호출하여 본인이 원하는 기능을 손쉽게 구현할 수 있다. 아래 링크로 접속하면 파이썬에서 제공하는 내장 함수를 확인할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;Built-in Functions&quot; data-ke-align=&quot;alignCenter&quot; data-og-description=&quot;The Python interpreter has a number of functions and types built into it that are always available. They are listed here in alphabetical order.,,,, Built-in Functions,,, A, abs(), aiter(), all(), a...&quot; data-og-host=&quot;docs.python.org&quot; data-og-source-url=&quot;https://docs.python.org/3.13/library/functions.html&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/crffhw/hyYMS9bcqo/lJt02oORkCihKQHbqsJUpk/img.png?width=1146&amp;amp;height=600&amp;amp;face=0_0_1146_600&quot; data-og-url=&quot;https://docs.python.org/3/library/functions.html&quot;&gt;&lt;a href=&quot;https://docs.python.org/3/library/functions.html&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://docs.python.org/3.13/library/functions.html&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/crffhw/hyYMS9bcqo/lJt02oORkCihKQHbqsJUpk/img.png?width=1146&amp;amp;height=600&amp;amp;face=0_0_1146_600');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Built-in Functions&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;The Python interpreter has a number of functions and types built into it that are always available. They are listed here in alphabetical order.,,,, Built-in Functions,,, A, abs(), aiter(), all(), a...&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;docs.python.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: left;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 사용자 정의 함수&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3083&quot; data-origin-height=&quot;1232&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bLOuy6/btsNFTGNL9C/Q24AW1SuXka4xfA0GxGpGk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bLOuy6/btsNFTGNL9C/Q24AW1SuXka4xfA0GxGpGk/img.png&quot; data-alt=&quot;사용자 정의 함수&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bLOuy6/btsNFTGNL9C/Q24AW1SuXka4xfA0GxGpGk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbLOuy6%2FbtsNFTGNL9C%2FQ24AW1SuXka4xfA0GxGpGk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;588&quot; height=&quot;235&quot; data-origin-width=&quot;3083&quot; data-origin-height=&quot;1232&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;사용자 정의 함수&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;파이썬에서 &lt;b&gt;기본적으로 지원하지 않는 함수&lt;/b&gt;이거나, &lt;b&gt;반복적으로 사용하는 일련의 명령문&lt;/b&gt;이 있다면, 명령문들을 하나로 묶어 함수로 직접 정의할 수 있다. 이를 &lt;b&gt;사용자 정의 함수&lt;/b&gt;라고 하며, &lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;함수의 이름을 정의하고&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;매개변수를 지정하는 것으로 함수를 새로 생성할 수 있다.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;사용자 정의 함수의 일반적인 형식은 아래 예시와 같다. 함수를 생성한 뒤 쌍점 아래로 들여쓰기 하여 명령문을 작성하면 된다.이와 같이 함수를 정의하면 단순하게 해당 함수를 호출하는 것만으로도 일련의 기능을 한 줄의 명령문으로 불러올 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;def Hello(name):	# 사용자 정의 함수 생성
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sentence = 'Hello ' + name + '!'
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(sentence)

Hello('World')		# 사용자 정의 함수 호출
Hello('VEDACUBE')&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2.1. return 명령문&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;사용자 정의 함수 내에서 연산한 결과를 반환하여 외부 변수에 저장하고 싶다면, 아래 예시처럼 return 명령문과 반환할 변수 이름을 작성하면 된다. 이때 &lt;b&gt;사용자 정의 함수는 return 명령문을 실행한 뒤 바로 종료&lt;/b&gt;되므로, 그 이후에 있는 명령문들은 실행되지 않는다.&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;def Hello(name):		# 사용자 정의 함수 생성
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sentence = 'Hello ' + name + '!'
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return sentence
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print('This line will not be printed.')
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
greeting = Hello('VEDACUBE')	# 사용자 정의 함수 호출
print(greeting)&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;2.2. 튜플 할당&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;파이썬에서 사용자 정의 함수는 반환값을 튜플로 반환한다. 만약 사용자 정의 함수가 여러 개의 값을 반환한다면, 아래 예시처럼 튜플 할당으로 여러 변수에 저장하는 것이 가능하다.&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;def basic_opertions(a, b):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return a + b, a - b, a * b, a / b
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
p, q, r, s = basic_operation(2, 5)
print(p, q, r, s)&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3. 실행 흐름&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;사용자 정의 함수 내에 정의된 명령문들은 기본적인 실행 흐름에 포함되지 않고 넘어간다. 프로그램의 실행 흐름이 함수를 호출하는 명령문에 도달하면 다음 명령문으로 이동하기 전에 해당 사용자 정의 함수로 이동하여 일련의 명령문을 실행한다. 함수에 포함된 모든 명령문을 실행하면, 다시 원래 지점으로 돌아와 실행 흐름을 이어간다. 하지만 &lt;b&gt;사용자 정의 함수의&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; 정의는 반드시 해당 함수 호출 이전에 되어 있어야 한다.&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1766060132624&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;파이썬 | 사용자 정의 함수(2): 매개변수와 전달인자&quot; data-og-description=&quot;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/137&quot; data-og-url=&quot;https://vedacube.tistory.com/137&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/CLbWQ/hyZPAARY7o/TaPCin9MJfHsQeYHGxR2pK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cU4QUJ/hyZPMfFLGm/DrzERvvlHE5NJkpvbkTfYK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/RrMxw/hyZPXVw6r8/cBJP8VEyJDnbBX4ghG5M9k/img.png?width=5885&amp;amp;height=2255&amp;amp;face=0_0_5885_2255&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/137&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/137&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/CLbWQ/hyZPAARY7o/TaPCin9MJfHsQeYHGxR2pK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cU4QUJ/hyZPMfFLGm/DrzERvvlHE5NJkpvbkTfYK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/RrMxw/hyZPXVw6r8/cBJP8VEyJDnbBX4ghG5M9k/img.png?width=5885&amp;amp;height=2255&amp;amp;face=0_0_5885_2255');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;파이썬 | 사용자 정의 함수(2): 매개변수와 전달인자&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;- 박진수. (2019). 바로 쓰는 파이썬. 서울대학교출판문화원.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Programming/Python</category>
      <category>파이썬</category>
      <category>프로그래밍</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/145</guid>
      <comments>https://vedacube.tistory.com/145#entry145comment</comments>
      <pubDate>Fri, 6 Jun 2025 18:00:40 +0900</pubDate>
    </item>
    <item>
      <title>최적설계 | 제약조건 문제 수치해법(2): 순차 선형계획법 SLP</title>
      <link>https://vedacube.tistory.com/130</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;1. 최적설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/336&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 설계문제 정식화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/352&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.2. 제약조건의 정규화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/338&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2. 최적성 조건&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/339&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/340&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2. 부등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/341&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3. KKT 최적성 조건&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/346&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 대안 형식과 이계 필요조건&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/317&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3. 선형계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/348&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 심플렉스법&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/354&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1.1. 인위변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/353&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. scipy.optimize.linprog&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/320&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4. 이차계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/103&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. qpsolvers.solve_qp&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 비제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/166&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 최속강하법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/109&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 공액경사법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/122&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 구간감소법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/123&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. 설계문제의 선형화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/130&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.2. 순차 선형계획법 SLP ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/80&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.3. 순차 이차계획법 SQP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/396&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.4. 부정확 이동거리 탐색법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/321&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.5. 제약최속강하법 CSD&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 자연 영감 탐색법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/397&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 유전 알고리즘 GA&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/405&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1.1. pygad.GA&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/398&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. 미분 진화 알고리즘 DE&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/156&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2.1. scipy.optimize.differential_evolution&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 다목적 최적설계 문제&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/144&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 파레토 최적점&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/431&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 가중치 합 방법&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/213&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 비지배 정렬 유전 알고리즘 NSGA-II&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/212&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3.1. pymoo.alghrithms.moo.nsga2.NSGA2&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1. 순차 선형계획법&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;앞서 다룬 바와 같이, 선형 테일러 급수 전개로 비선형&amp;middot;제약조건 최적설계문제를 선형화하였다면 해당 문제에 선형계획법을 적용할 수 있다. 이처럼 설계 변화량을 계산하기 위해 매 단계마다 선형계획법을 적용하는 방법을 &lt;b&gt;순차 선형계획법&lt;/b&gt;(&lt;span style=&quot;background-color: #ffffff; color: #474747; text-align: start;&quot;&gt;Sequential Linear Programming&lt;/span&gt;, SLP)이라 한다. 순차 선형계획법에서는 설계 변화량이 너무 크면 선형 근사가 유효하지 않을 수 있으므로, 설계 변화량에 아래와 같이 &lt;b&gt;이동 한계&lt;/b&gt;를 부과해야 한다. &lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;이동 한계의 상한과 하한은 설계변수 값에 대한 일정 비율로 선택되며,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;선형계획문제에 새로운 제한조건으로 추가된다.&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1745306353476&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{subject~to}~~~~-\Delta_{il}^{\left(k\right)} \leq \Delta x_i^{\left(k\right)} \leq \Delta_{iu}^{\left(k\right)};~~~~i=1~to~n
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{subject~to}~~~~-\Delta_{il}^{\left(k\right)} \leq \Delta x_i^{\left(k\right)} \leq \Delta_{iu}^{\left(k\right)};~~~~i=1~to~n \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;적정한 이동 한계를 선택하는 것은 순차 선형계획법의 성공과 실패를 좌우한다. 이동 한계가 너무 제한적이면 해를 갖지 않을 수 있으므로, 문제를 성공적으로 풀기 위해서는 매 반복마다 적정한 이동 한계를 선택하고 조절할 수 있어야 한다.&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: justify;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;2. 알고리즘&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;7356&quot; data-origin-height=&quot;1547&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/C2Yf9/btsOo88Ztzb/nbzyBjN1EY8zuk5Pqrcwe1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/C2Yf9/btsOo88Ztzb/nbzyBjN1EY8zuk5Pqrcwe1/img.png&quot; data-alt=&quot;순차 선형계획법 알고리즘&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/C2Yf9/btsOo88Ztzb/nbzyBjN1EY8zuk5Pqrcwe1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FC2Yf9%2FbtsOo88Ztzb%2FnbzyBjN1EY8zuk5Pqrcwe1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;855&quot; height=&quot;180&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;7356&quot; data-origin-height=&quot;1547&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;순차 선형계획법 알고리즘&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;순차 선형계획법을 시작하기에 앞서 &lt;b&gt;종료 판정기준 &lt;/b&gt;두 가지를 정의한다. 첫 번째 기준은 &lt;b&gt;(1) 제약조건에 대한 허용 오차&lt;/b&gt;로, 등호 제약조건의 절대값과 부등호 제약조건이 해당 기준보다 작거나 같아야 한다. 두 번째 기준은 &lt;b&gt;(2) 설계 변화량을 0으로 만들기 위한 것&lt;/b&gt;으로, 설계 변화량이 해당 기준보다 작거나 같아야 한다. 이때 종료 판정기준 두 가지 모두 양수이며 충분히 작아야 한다. 이제 초기 설계점을 시작으로 종료 판정기준을 만족할 때까지 탐색을 반복한다. 현재 설계점에서 목적함수와 제약조건 함수의 값과 경사도를 계산하고, 선형 테일러 급수 전개를 통해 문제를 국소적으로 선형화한다. 이동 한계의 상한과 하한을 현재 설계의 일정 비율로 선택하여 제한 조건에 포함한 뒤, 심플렉스법을 적용하여 선형계획문제를 풀이한다. 새로운 설계점을 갱신하고 종&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;료 판정기준을 만족할 때까지 탐색을 반복한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: justify;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3. 예제&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;1971&quot; data-origin-height=&quot;1783&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bhXTy9/btsNCDhL5Wd/HIOMWlNUOL0iuPuUq6EmAk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bhXTy9/btsNCDhL5Wd/HIOMWlNUOL0iuPuUq6EmAk/img.png&quot; data-alt=&quot;비선형 제약조건 문제&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bhXTy9/btsNCDhL5Wd/HIOMWlNUOL0iuPuUq6EmAk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbhXTy9%2FbtsNCDhL5Wd%2FHIOMWlNUOL0iuPuUq6EmAk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;360&quot; height=&quot;326&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;1971&quot; data-origin-height=&quot;1783&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;비선형 제약조건 문제&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: left;&quot;&gt;&amp;nbsp; &amp;nbsp;다음과 같은 비선형&amp;middot;제약조건 최적설계 문제에 초기 설계점 (1, 1)에 대해서 순차 선형계획법을 한 단계 적용해보자.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1745755213933&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align} 
\mathrm{minimize}~~~~&amp;amp;f = x_1^2 + x_2^2 - 3x_1x_2 \\\\
\mathrm{subject~to}~~~~&amp;amp;g_1 = x_1^2 + x_2^2 - 6 \leq 0 \\\\
&amp;amp;g_2 = -x_1 \leq 0 \\\\
&amp;amp;g_3 = -x_2 \leq 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{minimize}~~~~&amp;amp;f = x_1^2 + x_2^2 - 3x_1x_2 \\\\ \mathrm{subject~to}~~~~&amp;amp;g_1 = x_1^2 + x_2^2 - 6 \leq 0 \\\\ &amp;amp;g_2 = -x_1 \leq 0 \\\\ &amp;amp;g_3 = -x_2 \leq 0 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: left;&quot;&gt;&amp;nbsp; &amp;nbsp;위 문제를 초기 설계점에서 선형화하여 나타내면 다음과 같은 선형계획문제를 얻을 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1745755297766&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{minimize}~~~~&amp;amp;f\left( \mathbf{x} \right) = -x_1-x_2+1 \\\\

\mathrm{subject~to}~~~~&amp;amp;g_1\left( \mathbf{x} \right) 
= 2x_1 + 2x_2 - 8 \leq 0 \\\\

&amp;amp;g_2\left( \mathbf{x} \right) = -x_1 \leq 0 \\\\

&amp;amp;g_3\left( \mathbf{x} \right) = -x_2 \leq 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{minimize}~~~~&amp;amp;f\left( \mathbf{x} \right) = -x_1-x_2+1 \\\\ \mathrm{subject~to}~~~~&amp;amp;g_1\left( \mathbf{x} \right) = 2x_1 + 2x_2 - 8 \leq 0 \\\\ &amp;amp;g_2\left( \mathbf{x} \right) = -x_1 \leq 0 \\\\ &amp;amp;g_3\left( \mathbf{x} \right) = -x_2 \leq 0 \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Optimum Design.png&quot; data-origin-width=&quot;2597&quot; data-origin-height=&quot;1772&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/GND4I/btsNBI5abpy/FixQ28p6K6bJQl5f0avsE1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/GND4I/btsNBI5abpy/FixQ28p6K6bJQl5f0avsE1/img.png&quot; data-alt=&quot;초기 설계점 (1, 1)에서의 순차 선형계획법&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/GND4I/btsNBI5abpy/FixQ28p6K6bJQl5f0avsE1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FGND4I%2FbtsNBI5abpy%2FFixQ28p6K6bJQl5f0avsE1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;476&quot; height=&quot;325&quot; data-filename=&quot;Optimum Design.png&quot; data-origin-width=&quot;2597&quot; data-origin-height=&quot;1772&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;초기 설계점 (1, 1)에서의 순차 선형계획법&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;설계 변화량이 너무 크면 선형 근사가 유효하지 않을 수 있으므로, 설계 변화량에 15퍼센트의 &lt;/span&gt;이동 한계&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;를 부과하면 다음과 같은 제약조건이 선형계획문제에 추가된다.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;code_1745755557310&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{subject~to}~~~~&amp;amp;-0.15 \leq \Delta x_1^{\left(0\right)} \leq 0.15 \\\\
&amp;amp;-0.15 \leq \Delta x_2^{\left(0\right)} \leq 0.15
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{subject~to}~~~~&amp;amp;-0.15 \leq \Delta x_1^{\left(0\right)} \leq 0.15 \\\\ &amp;amp;-0.15 \leq \Delta x_2^{\left(0\right)} \leq 0.15 \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333; text-align: left;&quot;&gt;&amp;nbsp; &amp;nbsp;설계 변화량을 설계변수와 초기 설계점으로 치환하여 나타내면&lt;/span&gt; 이동 한계를 다음과 같이 나타낼 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1745755652142&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{subject~to}~~~~&amp;amp;-0.15 \leq x_1^{\left(0\right)} - 1 \leq 0.15 \\\\
&amp;amp;-0.15 \leq x_2^{\left(0\right)} - 1 \leq 0.15
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{subject~to}~~~~&amp;amp;-0.15 \leq x_1^{\left(0\right)} - 1 \leq 0.15 \\\\ &amp;amp;-0.15 \leq x_2^{\left(0\right)} - 1 \leq 0.15 \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1745755725072&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{subject~to}~~~~&amp;amp;0.85 \leq x_1^{\left(0\right)} \leq 1.15 \\\\
&amp;amp;0.85 \leq x_2^{\left(0\right)} \leq 1.15
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{subject~to}~~~~&amp;amp;0.85 \leq x_1^{\left(0\right)} \leq 1.15 \\\\ &amp;amp;0.85 \leq x_2^{\left(0\right)} \leq 1.15 \end{align}$$&lt;/div&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;위 선형계획문제에 scipy.optimize.linprog 함수를 이용하여 심플렉스 알고리즘을 적용하면 아래와 같은 프로그램을 작성하여 풀이할 수 있으며, 그 결과는 다음과 같다. 종료 판정기준을 만족할 때까지 &lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;위와 같은 과정을&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt; 반복하면 &lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: left;&quot;&gt;비선형&amp;middot;제약조건 문제의 &lt;/span&gt;최적해를 얻을 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748177430499&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathbf{x}^{\left(1\right)} = 
\begin{bmatrix}
1.15 \\
1.15 \\
\end{bmatrix}

\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{x}^{\left(1\right)} = \begin{bmatrix} 1.15 \\ 1.15 \\ \end{bmatrix} \end{align}$$&lt;/div&gt;
&lt;pre id=&quot;code_1745307336986&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# 라이브러리 추가
import numpy as np
from scipy.optimize import linprog

# 선형계획문제 환산가격계수 행렬 정의
c = np.array([-1.0, -1.0])

# 선형계획문제 부등호제약조건 행렬 정의
A_ub = np.array([[1.0, 1.0]])
b_ub = np.array([4.0])

# 선형계획문제 등호제약조건 행렬 정의
A_eq = None
b_eq = None

# 설계변수 범위 리스트 정의 
y0_bounds = (0.85, 1.15)
y1_bounds = (0.85, 1.15)
bounds = [y0_bounds, y1_bounds]

# 선형계획문제 최적화 알고리즘
result = linprog(c, A_ub=A_ub, b_ub=b_ub, A_eq=A_eq, b_eq=b_eq, bounds=bounds)

# 선형계획문제 최적 결과 출력
print(result.message)
print(result.x)
print(result.fun)&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1745675217411&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 파이썬 기반 선형계획문제 알고리즘 scipy.optimize.linprog&quot; data-og-description=&quot;1. SciPy 패키지 SciPy는 파이썬 기반의 오픈소스 패키지로, 최적화를 비롯하여 적분, 보간, 미분방정식 등의 과학기술 계산 문제를 다루기 위한 다양한 알고리즘을 제공한다. 파이썬 기반의 연산 &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/353&quot; data-og-url=&quot;https://vedacube.tistory.com/353&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/rgPQI/hyYMPjL3dA/HatL4F8NKakiAmn89jZrtk/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/eO3KX/hyYM4VxHPq/d5HFAKRih6wS5uwkPEyiY0/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/FtFn0/hyYMTNfi46/EHCeQSc1YO4s2kqacCXvN1/img.png?width=1903&amp;amp;height=1923&amp;amp;face=0_0_1903_1923&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/353&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/353&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/rgPQI/hyYMPjL3dA/HatL4F8NKakiAmn89jZrtk/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/eO3KX/hyYM4VxHPq/d5HFAKRih6wS5uwkPEyiY0/img.png?width=800&amp;amp;height=799&amp;amp;face=0_0_800_799,https://scrap.kakaocdn.net/dn/FtFn0/hyYMTNfi46/EHCeQSc1YO4s2kqacCXvN1/img.png?width=1903&amp;amp;height=1923&amp;amp;face=0_0_1903_1923');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 파이썬 기반 선형계획문제 알고리즘 scipy.optimize.linprog&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. SciPy 패키지 SciPy는 파이썬 기반의 오픈소스 패키지로, 최적화를 비롯하여 적분, 보간, 미분방정식 등의 과학기술 계산 문제를 다루기 위한 다양한 알고리즘을 제공한다. 파이썬 기반의 연산&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1748079429239&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 제약조건 문제 수치해법(1): 설계문제 선형화&quot; data-og-description=&quot;1. 설계문제 선형화 비선형&amp;middot;제약조건 최적설계문제를 수치적으로 풀이하는 것 또한 탐색방향과 이동거리를 결정한다. 그러나 제약조건을 고려하여 탐색방향과 이동거리를 결정해야 하기 때문&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/123&quot; data-og-url=&quot;https://vedacube.tistory.com/123&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bY7h5w/hyYYGafopZ/mVQnDLUt8CJsLvPCbKiCF0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/fCApF/hyYYGuzmlp/9czCEU6mvslEpmKkHOAfd1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/AB8KP/hyYW4bDFTA/7l9lB46oKWVJKLN3DOz9Jk/img.png?width=1968&amp;amp;height=1914&amp;amp;face=0_0_1968_1914&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/123&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/123&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bY7h5w/hyYYGafopZ/mVQnDLUt8CJsLvPCbKiCF0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/fCApF/hyYYGuzmlp/9czCEU6mvslEpmKkHOAfd1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/AB8KP/hyYW4bDFTA/7l9lB46oKWVJKLN3DOz9Jk/img.png?width=1968&amp;amp;height=1914&amp;amp;face=0_0_1968_1914');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 제약조건 문제 수치해법(1): 설계문제 선형화&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 설계문제 선형화 비선형&amp;middot;제약조건 최적설계문제를 수치적으로 풀이하는 것 또한 탐색방향과 이동거리를 결정한다. 그러나 제약조건을 고려하여 탐색방향과 이동거리를 결정해야 하기 때문&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: left;&quot;&gt;- Arora, J. S. (2016).&amp;nbsp;&lt;i&gt;Introduction to optimum design&lt;/i&gt;. Elsevier.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Optimum Design</category>
      <category>공학</category>
      <category>최적설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/130</guid>
      <comments>https://vedacube.tistory.com/130#entry130comment</comments>
      <pubDate>Fri, 30 May 2025 18:00:45 +0900</pubDate>
    </item>
    <item>
      <title>파이썬 | 예외 처리: try-except</title>
      <link>https://vedacube.tistory.com/295</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/358&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 파이썬&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/347&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 기본 기능과 규칙&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 변수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.1. 기본자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/356&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1.1. 정수형, 실수형, 논리형, 문자열&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.2. 복합자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/149&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.1. 리스트, 튜플&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/355&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.2. 딕셔너리, 세트&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.3. 자료형 메소드&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/359&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 리스트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/361&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.2. 딕셔너리 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/362&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.3. 세트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/349&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.4. 객체 복사&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 조건문과 반복문&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/328&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. if-elif-else, while, for&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/234&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. range, enumerate, zip&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/165&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.3. break, continue&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 예외 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/295&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. try-except ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 사용자 정의 함수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/145&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. def-return&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/137&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 매개변수와 전달인자&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/323&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 지역변수와 전역변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 모듈, 패키지, 라이브러리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/322&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. impoart-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 파일 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/151&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 메모장 파일 쓰고 읽기&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/402&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. with-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 객체 지향 프로그래밍&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/152&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 클래스와 인스턴스&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/350&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 속성과 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
  &lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/161&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 클래스 상속&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;1. 오류&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3029&quot; data-origin-height=&quot;1155&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/to6gV/btsNAZT3pzh/NseorzxJBPSlX0NyzXswa1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/to6gV/btsNAZT3pzh/NseorzxJBPSlX0NyzXswa1/img.png&quot; data-alt=&quot;오류&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/to6gV/btsNAZT3pzh/NseorzxJBPSlX0NyzXswa1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fto6gV%2FbtsNAZT3pzh%2FNseorzxJBPSlX0NyzXswa1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;537&quot; height=&quot;205&quot; data-origin-width=&quot;3029&quot; data-origin-height=&quot;1155&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;오류&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp; &amp;nbsp;프로그램을 실행할 때 발생할 수 있는 오류는 크게 ▲문법 오류, ▲논리 오류, ▲실행 오류로 나눌 수 있다. &lt;b&gt;문법 오류&lt;/b&gt;(syntax error)는 들여쓰기를 맞추지 않는 등의 잘못된 문법을 사용했을 때 발생한다. 문법 오류 없이 프로그램을 작성하여 실행하더라도 예상한 결과가 나오지 않을 수 있다.&amp;nbsp;이를&amp;nbsp;&lt;b&gt;논리 오류&lt;/b&gt;(logical error)라고 하며, 이를 해결하기 위해서는&amp;nbsp;실행 분기마다 발생할 수 있는 경우의 수를 확인하여 예상하지 못한 경우가 있는지 검토해야 한다. &lt;b&gt;실행 오류&lt;/b&gt;(runtime error)는 사용자가 함수에 잘못된 인자를 입력하거나 존재하지 않는 파일을 불러올 때 발생한다. 문법 오류는 컴파일러가 프로그램 실행 이전에 발견하여 알려주므로 바로 대처할 수 있지만, 논리 오류와 실행 오류와 같이 프로그램 실행 중에 발생하는 &lt;b&gt;예외&lt;/b&gt;는 왜 발생하였는지 분석하고 이를 방지하기 위한 코드를 따로 작성해주어야 한다.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Demilight, Noto Sans KR;&quot;&gt;2. 예외 처리&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;5191&quot; data-origin-height=&quot;1448&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/B0nix/btsNFurET6x/aCDlD0UzrKcBW0D4kEV4M0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/B0nix/btsNFurET6x/aCDlD0UzrKcBW0D4kEV4M0/img.png&quot; data-alt=&quot;예외 처리&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/B0nix/btsNFurET6x/aCDlD0UzrKcBW0D4kEV4M0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FB0nix%2FbtsNFurET6x%2FaCDlD0UzrKcBW0D4kEV4M0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;842&quot; height=&quot;235&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;5191&quot; data-origin-height=&quot;1448&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;예외 처리&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;&amp;nbsp;&amp;nbsp; 예외가 발생하면 실행되던 프로그램이 중단되고 어떤 예외가 발생하였는지 메세지가 출력된다. 만약 &lt;b&gt;예외가 발생하더라도 프로그램이 중단되지 않길 바란다면 예외가 발생했을 때 어떤 프로그램을 실행할지 구분&lt;/b&gt;해야 한다. 파이썬은 예외 처리를 위해 try문을 지원하며, 일반적인 형식은 아래 예시와 같다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;try: # 명령문1
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;number1 = int(input('분자에 해당하는 정수값을 입력하세요: '))	
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;number2 = int(input('분모에 해당하는 정수값을 입력하세요: '))
    number3 = number1 / number2
except: # 명령문2
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print('[경고] 입력한 값을 확인하세요.')		
else: # 명령문3
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(f'{number1}(을/를) {number2}(으)로 나눈 결과는 {number3}입니다.')			
finally: # 명령문4
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print('프로그램을 종료합니다.')&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;try 명령문 쌍점 아래로 들여쓰기 하여 예외가 발생할 가능성이 있는 명령문을 작성한다. try 명령문에 속한 명령문을 실행하는 도중에 예외가 발생하면 곧바로 except 명령문 아래로 들여쓰기가 되어 있는 명령문이 실행되고, 마지막으로 finally 명령문에 속한 명령문이 실행된다. 반면에 try 명령문에 속한 명령문을 실행했을 때 예외가 발생하지 않는다면, else 명령문과 finally 명령문에 속한 명령문이 차례대로 실행된다. 예외 처리에서 try 명령문과 except 명령문은 반드시 있어야 하며, else 명령문과 finally 명령문은 선택 사항이므로 생략할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2.1. 예외 내용 출력&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;만약 어떤 예외가 발생했는지 구체적으로 확인하고 싶다면 아래 예시와 같이 except 명령문에 예외 종류와 변수를 할당하여 출력하면 된다. 해당 예시에서는 모든 예외 종류를 포괄하는 Exception 예외를 할당하였으며, 예외 내용을 err 변수에 저장하여 문자열로 출력하도록 하였다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1745924732618&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;try:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;number1 = int(input('분자에 해당하는 정수값을 입력하세요: '))	
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;number2 = int(input('분모에 해당하는 정수값을 입력하세요: '))
    number3 = number1 / number2
    print(f'{number1}(을/를) {number2}(으)로 나눈 결과는 {number3}입니다.')	
except Exception as err
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(f'[경고] {err}')&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;파이썬은 앞서 언급한 Exception 예외 외에도 &lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;ArithmeticError, ValueError, RuntimeError 등&lt;/span&gt;&amp;nbsp;다양한 예외 종류를 지원하고 있으며 계층 구조를 이루고 있다.&amp;nbsp;아래 링크로 접속하면 어떤 예외 종류가 있는지, 어떤 계층 구조를 이루고 있는지 확인할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1745926785139&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Built-in Exceptions&quot; data-og-description=&quot;In Python, all exceptions must be instances of a class that derives from BaseException. In a try statement with an except clause that mentions a particular class, that clause also handles any excep...&quot; data-og-host=&quot;docs.python.org&quot; data-og-source-url=&quot;https://docs.python.org/3/library/exceptions.html&quot; data-og-url=&quot;https://docs.python.org/3/library/exceptions.html&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/E0Bvx/hyYL2djBjn/G1OSb0f8eclc2ddtKLQD1K/img.png?width=1146&amp;amp;height=600&amp;amp;face=0_0_1146_600&quot;&gt;&lt;a href=&quot;https://docs.python.org/3/library/exceptions.html&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://docs.python.org/3/library/exceptions.html&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/E0Bvx/hyYL2djBjn/G1OSb0f8eclc2ddtKLQD1K/img.png?width=1146&amp;amp;height=600&amp;amp;face=0_0_1146_600');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Built-in Exceptions&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;In Python, all exceptions must be instances of a class that derives from BaseException. In a try statement with an except clause that mentions a particular class, that clause also handles any excep...&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;docs.python.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1766060093057&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;파이썬 | 사용자 정의 함수(1): def-return&quot; data-og-description=&quot;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/145&quot; data-og-url=&quot;https://vedacube.tistory.com/145&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/ba3aL6/hyZPvzyZ1O/r4JKXNHgPDOFK5rkaeS2eK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bKsWHA/hyZOIsq0bg/9dPD8yjycF135vXJOva680/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/blcg7a/hyZP8CLtTI/iku9WxMxbBdTNuIW8nrJCk/img.png?width=3083&amp;amp;height=1232&amp;amp;face=0_0_3083_1232&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/145&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/145&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/ba3aL6/hyZPvzyZ1O/r4JKXNHgPDOFK5rkaeS2eK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bKsWHA/hyZOIsq0bg/9dPD8yjycF135vXJOva680/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/blcg7a/hyZP8CLtTI/iku9WxMxbBdTNuIW8nrJCk/img.png?width=3083&amp;amp;height=1232&amp;amp;face=0_0_3083_1232');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;파이썬 | 사용자 정의 함수(1): def-return&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;- 박진수. (2019). 바로 쓰는 파이썬. 서울대학교출판문화원.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Programming/Python</category>
      <category>파이썬</category>
      <category>프로그래밍</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/295</guid>
      <comments>https://vedacube.tistory.com/295#entry295comment</comments>
      <pubDate>Fri, 23 May 2025 18:00:49 +0900</pubDate>
    </item>
    <item>
      <title>파이썬 | 조건문과 반복문(3): break, continue</title>
      <link>https://vedacube.tistory.com/165</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/358&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 파이썬&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/347&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 기본 기능과 규칙&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 변수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.1. 기본자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/356&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1.1. 정수형, 실수형, 논리형, 문자열&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.2. 복합자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/149&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.1. 리스트, 튜플&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/355&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.2. 딕셔너리, 세트&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.3. 자료형 메소드&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/359&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 리스트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/361&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.2. 딕셔너리 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/362&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.3. 세트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/349&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.4. 객체 복사&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 조건문과 반복문&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/328&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. if-elif-else, while, for&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/234&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. range, enumerate, zip&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/165&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.3. break, continue ★&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 예외 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/295&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. try-except&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 사용자 정의 함수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/145&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. def-return&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/137&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 매개변수와 전달인자&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/323&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 지역변수와 전역변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 모듈, 패키지, 라이브러리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/322&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. impoart-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 파일 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/151&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 메모장 파일 쓰고 읽기&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/402&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. with-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 객체 지향 프로그래밍&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/152&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 클래스와 인스턴스&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/350&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 속성과 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
  &lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/161&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 클래스 상속&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;1. break&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;5370&quot; data-origin-height=&quot;1830&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/GhdAR/btsMedSjkOj/KaJdrr8m8aY2fNcGfIhBKk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/GhdAR/btsMedSjkOj/KaJdrr8m8aY2fNcGfIhBKk/img.png&quot; data-alt=&quot;while 반복문에서의 break 명령문&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/GhdAR/btsMedSjkOj/KaJdrr8m8aY2fNcGfIhBKk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FGhdAR%2FbtsMedSjkOj%2FKaJdrr8m8aY2fNcGfIhBKk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;631&quot; height=&quot;215&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;5370&quot; data-origin-height=&quot;1830&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;while 반복문에서의 break 명령문&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;break 명령문은 &lt;b&gt;해당 명령문이 속한 반복문을 강제로 종료&lt;/b&gt;시킨다. while문이나 for문에서 break 명령문을 실행하면 조건식을 만족하지 않아도 해당 반복문을 종료하고 빠져나온다. 일반적으로 아래 예시와 같이 조건식 없이 무한하게 반복하는 반복문을 작성하고, 그 안에 조건문을 작성한 뒤 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;조건을 만족했을 때 break 명령문이 실행되도록 구성한다. 만약 중첩 반복문에 &lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;break 명령문이&lt;span&gt; &lt;/span&gt;&lt;/span&gt;포함되어 있다면 break 명령문이 속해 있는 반복문만 종료하고 이외에 반복문은 계속해서 실행한다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1739172868459&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;x = 0

while True:			# 조건식1
    print(x)			# 명령문1
    if x &amp;gt;= 10 :		# 조건식N
        print('반복문 종료')	# 명령문N
        break
    x += 1			# 명령문M&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;2. continue&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;6439&quot; data-origin-height=&quot;2027&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/FFJlM/btsMb0geM43/CcFBbn8AsNEn2g7GDPGkQ1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/FFJlM/btsMb0geM43/CcFBbn8AsNEn2g7GDPGkQ1/img.png&quot; data-alt=&quot;for 반복문에서의 continue 명령문&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/FFJlM/btsMb0geM43/CcFBbn8AsNEn2g7GDPGkQ1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FFFJlM%2FbtsMb0geM43%2FCcFBbn8AsNEn2g7GDPGkQ1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;793&quot; height=&quot;250&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;6439&quot; data-origin-height=&quot;2027&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;for 반복문에서의 continue 명령문&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;continue 명령문은 &lt;b&gt;해당 명령문이 속한 반복문의 명령문을 무시하고 다음 반복 회차로 넘어간다.&lt;/b&gt; 아래 예시와 같이 반복문에서 특정 조건에서만 명령문을 실행시키고, 다른 조건에서는 명령문을 실행시키고 싶지 않을 때 활용할 수 있다. 조건문을 잘 활용한다면 continue 명령문 없이도 동일한 기능을 하는 프로그램을 작성할 수 있겠지만, continue 명령문을 잘 활용한다면 이전보다 간결한 프로그램을 작성할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1739043067037&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;for i in range(10):
    print(f'{i+1}회차 반복: ', end='')	# 명령문1
    if i % 2 == 0:			# 조건식N
        print()				# 명령문N
        continue	
    print(i)				# 명령문2&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1766059973032&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;파이썬 | 예외 처리: try-except&quot; data-og-description=&quot;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/295&quot; data-og-url=&quot;https://vedacube.tistory.com/295&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/nKgta/hyZPqSAbYk/GeQvKuQnqErYKSnXNeIWk1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/eQERs/hyZP4f4EmE/lezuOFt0rcxwrWrqHbCky0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/0RAjd/hyZPMNuK5R/Gb8Fcz31iKwdyWZmWokhX0/img.png?width=5191&amp;amp;height=1448&amp;amp;face=0_0_5191_1448&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/295&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/295&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/nKgta/hyZPqSAbYk/GeQvKuQnqErYKSnXNeIWk1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/eQERs/hyZP4f4EmE/lezuOFt0rcxwrWrqHbCky0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/0RAjd/hyZPMNuK5R/Gb8Fcz31iKwdyWZmWokhX0/img.png?width=5191&amp;amp;height=1448&amp;amp;face=0_0_5191_1448');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;파이썬 | 예외 처리: try-except&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;- 박진수. (2019). 바로 쓰는 파이썬. 서울대학교출판문화원.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Programming/Python</category>
      <category>파이썬</category>
      <category>프로그래밍</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/165</guid>
      <comments>https://vedacube.tistory.com/165#entry165comment</comments>
      <pubDate>Fri, 16 May 2025 18:00:46 +0900</pubDate>
    </item>
    <item>
      <title>파이썬 | 조건문과 반복문(2): range, enumerate, zip</title>
      <link>https://vedacube.tistory.com/234</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/358&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 파이썬&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/347&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 기본 기능과 규칙&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 변수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.1. 기본자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/356&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1.1. 정수형, 실수형, 논리형, 문자열&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.2. 복합자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/149&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.1. 리스트, 튜플&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/355&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.2. 딕셔너리, 세트&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.3. 자료형 메소드&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/359&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 리스트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/361&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.2. 딕셔너리 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/362&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.3. 세트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/349&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.4. 객체 복사&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 조건문과 반복문&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/328&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. if-elif-else, while, for&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/234&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. range, enumerate, zip ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/165&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.3. break, continue&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 예외 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/295&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. try-except&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 사용자 정의 함수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/145&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. def-return&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/137&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 매개변수와 전달인자&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/323&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 지역변수와 전역변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 모듈, 패키지, 라이브러리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/322&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. impoart-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 파일 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/151&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 메모장 파일 쓰고 읽기&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/402&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. with-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 객체 지향 프로그래밍&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/152&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 클래스와 인스턴스&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/350&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 속성과 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
  &lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/161&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 클래스 상속&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1. range()&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;range() 클래스는 &lt;b&gt;괄호 안에 지정한 정수 범위에 해당하는 정수를 나열하여 반환&lt;/b&gt;한다. 이때 반환되는 자료형은 리스트나 튜플이 아니기 때문에 리스트나 튜플처럼 다루고자 한다면 아래 예시처럼 형 변환을 하도록 하자.&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;# 0부터 4까지의 정수를 담은 자료형을 생성
example_range = range(5)
print(example_range, type(example_range))	

# 2부터 6까지의 정수를 담은 자료형을 생성
# 리스트로 형 변환
example_list = list(range(2, 7))
print(example_list, type(example_list))

# 0부터 8까지의 2 간격으로 생성한 정수를 담은 자료형을 생성
# 튜플로 형 변환
example_tuple = tuple(range(0, 9, 2))
print(example_tuple, type(example_tuple))&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;3395&quot; data-origin-height=&quot;617&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/EPNWe/btsMaDFgK3w/kPhYkCCfNCgtUesajyVnDk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/EPNWe/btsMaDFgK3w/kPhYkCCfNCgtUesajyVnDk/img.png&quot; data-alt=&quot;range() 클래스&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/EPNWe/btsMaDFgK3w/kPhYkCCfNCgtUesajyVnDk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FEPNWe%2FbtsMaDFgK3w%2FkPhYkCCfNCgtUesajyVnDk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;481&quot; height=&quot;87&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;3395&quot; data-origin-height=&quot;617&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;range() 클래스&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;range() 클래스는 아래 예시처럼 for문에서 반복하고자 하는 리스트나 튜플 대신 사용할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1739038827006&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;for i in range(5):	
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(i)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
for j in range(2, 7):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(j)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
for k in range(0, 9, 2):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(k)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;2. enumerate()&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;enumerate() 클래스는 &lt;b&gt;괄호 안에 입력한 리스트나 튜플의 객체를 추출한 뒤 인덱스 번호와 튜플로 묶어 반환&lt;/b&gt;한다. 이때 반환되는 자료형은 리스트나 튜플이 아니기 때문에 쉽게 다루고자 한다면 아래 예시처럼 형 변환을 하도록 하자.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;alphabet = ['a', 'b', 'c', 'd', 'e']
# 인덱스 번호와 리스트 객체의 튜플 쌍으로 이루어진 자료형 생성
example_enumerate = enumerate(alphabet)
print(example_enumerate, type(example_enumerate))

# 리스트로 형 변환
example_list = list(enumerate(alphabet))
print(example_list, type(example_list))

# 인덱스 번호를 10으로 시작
# 튜플로 형 변환
example_tuple = tuple(enumerate(alphabet, 10))
print(example_tuple, type(example_tuple))

# 딕셔너리로 형 변환
example_dict = dict(enumerate(alphabet))
print(example_dict, type(example_dict))&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;6455&quot; data-origin-height=&quot;605&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Pd39o/btsMbxEpPT9/TMrDyj01lFMO2N3D4HadEk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Pd39o/btsMbxEpPT9/TMrDyj01lFMO2N3D4HadEk/img.png&quot; data-alt=&quot;enumerate() 클래스&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Pd39o/btsMbxEpPT9/TMrDyj01lFMO2N3D4HadEk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FPd39o%2FbtsMbxEpPT9%2FTMrDyj01lFMO2N3D4HadEk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;849&quot; height=&quot;80&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;6455&quot; data-origin-height=&quot;605&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;enumerate() 클래스&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;enumerate() 클래스는 아래 예시처럼 for문에서 반복하고자 하는 리스트나 튜플 대신 사용할 수 있다. range() 클래스와는 다르게 인덱스 번호도 함께 반환하기 때문에&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;몇 번째 객체를 다루고 있는지&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;튜플 할당으로&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;확인할 수 있다는 장점이 있다. 만약 인덱스 번호를 다른 번호로 대체하고 싶다면 괄호 안에 시작 번호를 아래 예시처럼 입력하면 된다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1739038870181&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;for k in enumerate(alphabet):
    print(k)

for i, j in enumerate(alphabet):
    print(i, j)

for i, j in enumerate(alphabet, 10):
    print(i, j)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;3. zip()&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;zip() 클래스는 &lt;b&gt;괄호 안에 입력한 여러 개의 리스트나 튜플의 객체를 하나씩 추출한 뒤 하나로 묶어 반환&lt;/b&gt;한다. 이때 클래스에 입력한 리스트나 튜플이 포함하고 있는 객체의 수가 다르다면&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;가장 적은 객체를 가지고 있는 리스트나 튜플을 기준으로 객체를 하나씩 추출한다. &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;zip() 클래스를 사용하여 반환되는 자료형은 리스트나 튜플이 아니기 때문에 직접 다루고자 한다면 아래 예시처럼 형 변환을 하도록 하자.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1739039662814&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;list1 = ['a', 'b', 'c']
list2 = ('p', 'q', 'r', 's')
list3 = '12345'

# 각 자료형의 객체를 하나씩 추출하여 묶어 나열한 자료형 생성
example_zip = zip(list1, list2, list3)
print(example_zip, type(example_zip))

# 리스트로 형 변환
example_list = list(zip(list1, list2, list3))
print(example_list, type(example_list))

# 튜플로 형 변환
example_tuple = tuple(zip(list1, list2, list3))
print(example_tuple, type(example_tuple))&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;6379&quot; data-origin-height=&quot;601&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bjpOOE/btsMbqS1Mhc/9mk6GdtidIFhQz7v25QUjk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bjpOOE/btsMbqS1Mhc/9mk6GdtidIFhQz7v25QUjk/img.png&quot; data-alt=&quot;zip() 클래스&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bjpOOE/btsMbqS1Mhc/9mk6GdtidIFhQz7v25QUjk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbjpOOE%2FbtsMbqS1Mhc%2F9mk6GdtidIFhQz7v25QUjk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;849&quot; height=&quot;80&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;6379&quot; data-origin-height=&quot;601&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;zip() 클래스&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;만약 for문에서 여러 개의 리스트 혹은 튜플을 다루고자 한다면 해당 클래스를 아래 예시처럼 사용할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;list1 = ['a', 'b', 'c']
list2 = ('p', 'q', 'r', 's')
list3 = '12345'

for i, j, k in zip(list1, list2, list3):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(i, j, k)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1766059930531&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;파이썬 | 조건문과 반복문(3): break, continue&quot; data-og-description=&quot;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/165&quot; data-og-url=&quot;https://vedacube.tistory.com/165&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bQH5Lj/hyZPULhbUn/dHLARI3i0AMvo9GHmLHeA0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/Av3bI/hyZOLo9HIe/JBdSvvS1LNEEJyj1K4beg1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/drsydn/hyZONUNPsT/zCl3Z7NDycvPZ4Bwhzp1rK/img.png?width=6439&amp;amp;height=2027&amp;amp;face=0_0_6439_2027&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/165&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/165&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bQH5Lj/hyZPULhbUn/dHLARI3i0AMvo9GHmLHeA0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/Av3bI/hyZOLo9HIe/JBdSvvS1LNEEJyj1K4beg1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/drsydn/hyZONUNPsT/zCl3Z7NDycvPZ4Bwhzp1rK/img.png?width=6439&amp;amp;height=2027&amp;amp;face=0_0_6439_2027');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;파이썬 | 조건문과 반복문(3): break, continue&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;- 박진수. (2019). 바로 쓰는 파이썬. 서울대학교출판문화원.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Programming/Python</category>
      <category>파이썬</category>
      <category>프로그래밍</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/234</guid>
      <comments>https://vedacube.tistory.com/234#entry234comment</comments>
      <pubDate>Fri, 9 May 2025 18:00:26 +0900</pubDate>
    </item>
    <item>
      <title>최적설계 | 제약조건 문제 수치해법(1): 설계문제 선형화</title>
      <link>https://vedacube.tistory.com/123</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;1. 최적설계&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/336&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 설계문제 정식화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/352&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.2. 제약조건의 정규화&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/338&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2. 최적성 조건&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/339&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1. 등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/340&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2. 부등호제약조건 문제&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/341&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3. KKT 최적성 조건&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/346&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 대안 형식과 이계 필요조건&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/317&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3. 선형계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/348&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. 심플렉스법&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/354&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1.1. 인위변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/353&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. scipy.optimize.linprog&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/320&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4. 이차계획법&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/103&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. qpsolvers.solve_qp&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 비제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/166&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. 최속강하법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/109&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 공액경사법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/122&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 구간감소법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 제약조건 문제 수치해법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/123&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. 설계문제의 선형화 ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/130&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.2. 순차 선형계획법 SLP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/80&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.3. 순차 이차계획법 SQP&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/396&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.4. 부정확 이동거리 탐색법&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/321&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.5. 제약최속강하법 CSD&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 자연 영감 탐색법&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/397&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 유전 알고리즘 GA&lt;/a&gt; &lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/405&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1.1. pygad.GA&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/398&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. 미분 진화 알고리즘 DE&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/156&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2.1. scipy.optimize.differential_evolution&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 다목적 최적설계 문제&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/144&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 파레토 최적점&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/431&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 가중치 합 방법&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/213&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 비지배 정렬 유전 알고리즘 NSGA-II&lt;/a&gt;&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/212&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3.1. pymoo.alghrithms.moo.nsga2.NSGA2&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1. 설계문제 선형화&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp;비선형&amp;middot;제약조건 최적설계문제&lt;/b&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;를 수치적으로 풀이하는 것 또한 탐색방향과 이동거리를 결정한다. 그러나 제약조건을 고려하여 탐색방향과 이동거리를 결정해야 하기 때문에 최속강하법 등을 직접 적용할 수는 없다. 제약조건 문제의 수치적 방법은 현재 설계점에서 &lt;b&gt;선형 테일러 급수 전개로 목적함수와 제약조건 함수를 국소적으로 선형화&lt;/b&gt;하여 풀이한다. 먼저 현재 설계점에 대하여 목적함수를 국소적으로 선형화하면 다음과 같다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1743902829013&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
f\left( \textbf{x}^{\left(k\right)}+ \Delta \textbf{x}^{\left(k\right)} \right) \cong  f\left( \textbf{x}^{\left(k\right)} \right)+ \bigtriangledown f^T\left(\textbf{x}^{\left(k\right)}\right)\Delta \textbf{x}^{\left(k\right)}
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} f\left( \textbf{x}^{\left(k\right)}+ \Delta \textbf{x}^{\left(k\right)} \right) \cong f\left( \textbf{x}^{\left(k\right)} \right)+ \bigtriangledown f^T\left(\textbf{x}^{\left(k\right)}\right)\Delta \textbf{x}^{\left(k\right)} \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333; text-align: justify;&quot;&gt;&amp;nbsp; &amp;nbsp;현재 설계점에 대하여 등호제약조건과 부등호제약조건을 국소적으로 선형화하면 아래와 같다. &lt;b&gt;테일러 급수 전개에 의해 선형화된 문제는 설계점에 따라 다르다는 것에 유의하자.&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1743902834568&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
h_j\left( \textbf{x}^{\left(k\right)}+ \Delta \textbf{x}^{\left(k\right)} \right) &amp;amp;\cong  h_j\left( \textbf{x}^{\left(k\right)} \right)+ \bigtriangledown h_j^T\left(\textbf{x}^{\left(k\right)}\right)\Delta \textbf{x}^{\left(k\right)} \\\\
&amp;amp;= 0;~~~~j=1~to~p \\\\
g_j\left( \textbf{x}^{\left(k\right)}+ \Delta \textbf{x}^{\left(k\right)} \right) &amp;amp;\cong  g_j\left( \textbf{x}^{\left(k\right)} \right)+ \bigtriangledown g_j^T\left(\textbf{x}^{\left(k\right)}\right)\Delta \textbf{x}^{\left(k\right)} \\\\
&amp;amp;\leq 0;~~~~j=1~to~m
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} h_j\left( \textbf{x}^{\left(k\right)}+ \Delta \textbf{x}^{\left(k\right)} \right) &amp;amp;\cong h_j\left( \textbf{x}^{\left(k\right)} \right)+ \bigtriangledown h_j^T\left(\textbf{x}^{\left(k\right)}\right)\Delta \textbf{x}^{\left(k\right)} \\\\ &amp;amp;= 0;~~~~j=1~to~p \\\\ g_j\left( \textbf{x}^{\left(k\right)}+ \Delta \textbf{x}^{\left(k\right)} \right) &amp;amp;\cong g_j\left( \textbf{x}^{\left(k\right)} \right)+ \bigtriangledown g_j^T\left(\textbf{x}^{\left(k\right)}\right)\Delta \textbf{x}^{\left(k\right)} \\\\ &amp;amp;\leq 0;~~~~j=1~to~m \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;앞으로 비선형&amp;middot;제약조건 최적설계문제를 선형화하여 나타낼 때는 다음과 같은 표기법을 따르기로 한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748135522825&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
f\left(\mathbf{x}\right) 
&amp;amp;\cong f\left(\mathbf{x}_0\right) + \bigtriangledown f^T\left(\mathbf{x}_0\right) \left(\mathbf{x}-\mathbf{x}_0\right) \\\\
&amp;amp;= f\left(\mathbf{x}_0\right) + \mathbf{c}^T \left(\mathbf{x}-\mathbf{x}_0\right)
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} f\left(\mathbf{x}\right) &amp;amp;\cong f\left(\mathbf{x}_0\right) + \bigtriangledown f^T\left(\mathbf{x}_0\right) \left(\mathbf{x}-\mathbf{x}_0\right) \\\\ &amp;amp;= f\left(\mathbf{x}_0\right) + \mathbf{c}^T \left(\mathbf{x}-\mathbf{x}_0\right) \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748143421216&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathbf{h} \left(\mathbf{x}\right) 
&amp;amp;\cong \mathbf{h}\left(\mathbf{x}_0\right) + \bigtriangledown \mathbf{h}^T \left(\mathbf{x}_0\right) \left(\mathbf{x}-\mathbf{x}_0\right) \\\\
&amp;amp;= \mathbf{h}\left(\mathbf{x}_0\right) + \mathbf{N}^T \left(\mathbf{x}-\mathbf{x}_0\right) \\\\
&amp;amp;= 0 \\\\

\mathbf{g} \left(\mathbf{x}\right) 
&amp;amp;\cong \mathbf{g} \left(\mathbf{x}_0\right) + \bigtriangledown \mathbf{g}^T \left(\mathbf{x}_0\right) \left(\mathbf{x}-\mathbf{x}_0\right) \\\\
&amp;amp;= \mathbf{g} \left(\mathbf{x}_0\right) + \mathbf{A}^T \left(\mathbf{x}-\mathbf{x}_0\right) \\\\
&amp;amp;\leq 0 \\\\
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathbf{h} \left(\mathbf{x}\right) &amp;amp;\cong \mathbf{h}\left(\mathbf{x}_0\right) + \bigtriangledown \mathbf{h}^T \left(\mathbf{x}_0\right) \left(\mathbf{x}-\mathbf{x}_0\right) \\\\ &amp;amp;= \mathbf{h}\left(\mathbf{x}_0\right) + \mathbf{N}^T \left(\mathbf{x}-\mathbf{x}_0\right) \\\\ &amp;amp;= 0 \\\\ \mathbf{g} \left(\mathbf{x}\right) &amp;amp;\cong \mathbf{g} \left(\mathbf{x}_0\right) + \bigtriangledown \mathbf{g}^T \left(\mathbf{x}_0\right) \left(\mathbf{x}-\mathbf{x}_0\right) \\\\ &amp;amp;= \mathbf{g} \left(\mathbf{x}_0\right) + \mathbf{A}^T \left(\mathbf{x}-\mathbf{x}_0\right) \\\\ &amp;amp;\leq 0 \\\\ \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2. 예제&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;1970&quot; data-origin-height=&quot;1783&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bJFV95/btsNr3aejTD/QN7aBTqHtXT0augPPpJSTK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bJFV95/btsNr3aejTD/QN7aBTqHtXT0augPPpJSTK/img.png&quot; data-alt=&quot;비선형 제약조건 문제&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bJFV95/btsNr3aejTD/QN7aBTqHtXT0augPPpJSTK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbJFV95%2FbtsNr3aejTD%2FQN7aBTqHtXT0augPPpJSTK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;359&quot; height=&quot;325&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;1970&quot; data-origin-height=&quot;1783&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;비선형 제약조건 문제&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;아래에 주어진 비선형&amp;middot;제약조건 최적설계 문제를 현재 설계점 (1, 1)에 대해서 선형화하여 나타내보자.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1743924267887&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{minimize}~~~~&amp;amp;f = x_1^2 + x_2^2 - 3x_1x_2 \\\\
\mathrm{subject~to}~~~~&amp;amp;g_1 = x_1^2 + x_2^2 - 6 \leq 0 \\\\
&amp;amp;g_2 = -x_1 \leq 0 \\\\
&amp;amp;g_3 = -x_2 \leq 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{minimize}~~~~&amp;amp;f = x_1^2 + x_2^2 - 3x_1x_2 \\\\ \mathrm{subject~to}~~~~&amp;amp;g_1 = x_1^2 + x_2^2 - 6 \leq 0 \\\\ &amp;amp;g_2 = -x_1 \leq 0 \\\\ &amp;amp;g_3 = -x_2 \leq 0 \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;문제를 선형화하기 위해, 주어진 설계점에서 목적함수와 제약조건들의 경사도를 계산하면 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1743924794486&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\bigtriangledown f \left( 1,1 \right) &amp;amp;= \begin{pmatrix}
2x_1-3x_2 &amp;amp; 2x_2-3x_1 \\
\end{pmatrix}^T \\\\
&amp;amp;= \begin{pmatrix}
-1 &amp;amp; -1 \\
\end{pmatrix}^T \\\\
\bigtriangledown g_1 \left( 1,1 \right) &amp;amp;= \begin{pmatrix}
2x_1 &amp;amp; 2x_2 \\
\end{pmatrix}^T \\\\
&amp;amp;= \begin{pmatrix}
2 &amp;amp; 2 \\
\end{pmatrix}^T \\\\

\bigtriangledown g_2 \left( 1,1 \right) &amp;amp;= \begin{pmatrix}
-1 &amp;amp; 0 \\
\end{pmatrix}^T \\\\

\bigtriangledown g_3 \left( 1,1 \right) &amp;amp;= \begin{pmatrix}
0 &amp;amp; -1 \\
\end{pmatrix}^T
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \bigtriangledown f \left( 1,1 \right) &amp;amp;= \begin{pmatrix} 2x_1-3x_2 &amp;amp; 2x_2-3x_1 \\ \end{pmatrix}^T \\\\ &amp;amp;= \begin{pmatrix} -1 &amp;amp; -1 \\ \end{pmatrix}^T \\\\ \bigtriangledown g_1 \left( 1,1 \right) &amp;amp;= \begin{pmatrix} 2x_1 &amp;amp; 2x_2 \\ \end{pmatrix}^T \\\\ &amp;amp;= \begin{pmatrix} 2 &amp;amp; 2 \\ \end{pmatrix}^T \\\\ \bigtriangledown g_2 \left( 1,1 \right) &amp;amp;= \begin{pmatrix} -1 &amp;amp; 0 \\ \end{pmatrix}^T \\\\ \bigtriangledown g_3 \left( 1,1 \right) &amp;amp;= \begin{pmatrix} 0 &amp;amp; -1 \\ \end{pmatrix}^T \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;1968&quot; data-origin-height=&quot;1914&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/w0EuG/btsOaYUW1U4/C8WvWJQr7QwGg1rDHrDTL1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/w0EuG/btsOaYUW1U4/C8WvWJQr7QwGg1rDHrDTL1/img.png&quot; data-alt=&quot;설계점 (1, 1)에서 선형화된 비선형 제약조건 문제&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/w0EuG/btsOaYUW1U4/C8WvWJQr7QwGg1rDHrDTL1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fw0EuG%2FbtsOaYUW1U4%2FC8WvWJQr7QwGg1rDHrDTL1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;355&quot; height=&quot;345&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;1968&quot; data-origin-height=&quot;1914&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;설계점 (1, 1)에서 선형화된 비선형 제약조건 문제&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;주어진 설계점에서 선형 테일러 전개를 사용하여 목적함수와 제약조건들을 선형화하면 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1743926252470&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
f\left(\mathbf{x}\right) &amp;amp;\cong f\left(\mathbf{x}^{\left(0\right)}\right) + \bigtriangledown f^T\left(\mathbf{x}^{\left(0\right)}\right) \left(\mathbf{x}-\mathbf{x}^{\left(0\right)}\right) \\\\
&amp;amp;= -1 + 
\begin{pmatrix}
-1 &amp;amp; -1 \\
\end{pmatrix}
\begin{pmatrix}
x_1-1 \\
x_2-1
\end{pmatrix} \\\\
&amp;amp;= -x_1-x_2+1
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} f\left(\mathbf{x}\right) &amp;amp;\cong f\left(\mathbf{x}^{\left(0\right)}\right) + \bigtriangledown f^T\left(\mathbf{x}^{\left(0\right)}\right) \left(\mathbf{x}-\mathbf{x}^{\left(0\right)}\right) \\\\ &amp;amp;= -1 + \begin{pmatrix} -1 &amp;amp; -1 \\ \end{pmatrix} \begin{pmatrix} x_1-1 \\ x_2-1 \end{pmatrix} \\\\ &amp;amp;= -x_1-x_2+1 \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748144767717&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
g_1\left(\mathbf{x}\right) &amp;amp;\cong g_1\left(\mathbf{x}^{\left(0\right)}\right) + \bigtriangledown g_1^T\left(\mathbf{x}^{\left(0\right)}\right) \left(\mathbf{x}-\mathbf{x}^{\left(0\right)}\right) \\\\
&amp;amp;= -4 + 
\begin{pmatrix}
2 &amp;amp; 2 \\
\end{pmatrix}
\begin{pmatrix}
x_1-1 \\
x_2-1
\end{pmatrix} \\\\
&amp;amp;= 2x_1+2x_2-8 \\\\

g_2\left(\mathbf{x}\right) &amp;amp;\cong g_2\left(\mathbf{x}^{\left(0\right)}\right) + \bigtriangledown g_2^T\left(\mathbf{x}^{\left(0\right)}\right) \left(\mathbf{x}-\mathbf{x}^{\left(0\right)}\right) \\\\
&amp;amp;= -1 + 
\begin{pmatrix}
-1 &amp;amp; 0 \\
\end{pmatrix}
\begin{pmatrix}
x_1-1 \\
x_2-1
\end{pmatrix} \\\\
&amp;amp;= -x_1 \\\\

g_3\left(\mathbf{x}\right) &amp;amp;\cong g_3\left(\mathbf{x}^{\left(0\right)}\right) + \bigtriangledown g_3^T\left(\mathbf{x}^{\left(0\right)}\right) \left(\mathbf{x}-\mathbf{x}^{\left(0\right)}\right) \\\\
&amp;amp;= -1 + 
\begin{pmatrix}
0 &amp;amp; -1 \\
\end{pmatrix}
\begin{pmatrix}
x_1-1 \\
x_2-1
\end{pmatrix} \\\\
&amp;amp;= -x_2
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} g_1\left(\mathbf{x}\right) &amp;amp;\cong g_1\left(\mathbf{x}^{\left(0\right)}\right) + \bigtriangledown g_1^T\left(\mathbf{x}^{\left(0\right)}\right) \left(\mathbf{x}-\mathbf{x}^{\left(0\right)}\right) \\\\ &amp;amp;= -4 + \begin{pmatrix} 2 &amp;amp; 2 \\ \end{pmatrix} \begin{pmatrix} x_1-1 \\ x_2-1 \end{pmatrix} \\\\ &amp;amp;= 2x_1+2x_2-8 \\\\ g_2\left(\mathbf{x}\right) &amp;amp;\cong g_2\left(\mathbf{x}^{\left(0\right)}\right) + \bigtriangledown g_2^T\left(\mathbf{x}^{\left(0\right)}\right) \left(\mathbf{x}-\mathbf{x}^{\left(0\right)}\right) \\\\ &amp;amp;= -1 + \begin{pmatrix} -1 &amp;amp; 0 \\ \end{pmatrix} \begin{pmatrix} x_1-1 \\ x_2-1 \end{pmatrix} \\\\ &amp;amp;= -x_1 \\\\ g_3\left(\mathbf{x}\right) &amp;amp;\cong g_3\left(\mathbf{x}^{\left(0\right)}\right) + \bigtriangledown g_3^T\left(\mathbf{x}^{\left(0\right)}\right) \left(\mathbf{x}-\mathbf{x}^{\left(0\right)}\right) \\\\ &amp;amp;= -1 + \begin{pmatrix} 0 &amp;amp; -1 \\ \end{pmatrix} \begin{pmatrix} x_1-1 \\ x_2-1 \end{pmatrix} \\\\ &amp;amp;= -x_2 \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: start;&quot;&gt;&amp;nbsp; &amp;nbsp;이로써 비선형&amp;middot;제약조건 최적설계 문제가 설계점 (1, 1)에 대해서 선형화했을 때 다음과 같은 선형계획문제로 변형되었다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;code_1748145331573&quot; data-ke-type=&quot;html&quot; data-source=&quot;&amp;lt;script src=&amp;quot;https://polyfill.io/v3/polyfill.min.js?features=es6&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script id=&amp;quot;MathJax-script&amp;quot; async src=&amp;quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
$$ \begin{align}
\mathrm{minimize}~~~~&amp;amp;f = -x_1 - x_2 +1 \\\\
\mathrm{subject~to}~~~~&amp;amp;g_1 = 2x_1 + 2x_2 - 8 \leq 0 \\\\
&amp;amp;g_2 = -x_1 \leq 0 \\\\
&amp;amp;g_3 = -x_2 \leq 0
\end{align}$$&quot;&gt;
&lt;script src=&quot;https://polyfill.io/v3/polyfill.min.js?features=es6&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js&quot;&gt;&lt;/script&gt;
$$ \begin{align} \mathrm{minimize}~~~~&amp;amp;f = -x_1 - x_2 +1 \\\\ \mathrm{subject~to}~~~~&amp;amp;g_1 = 2x_1 + 2x_2 - 8 \leq 0 \\\\ &amp;amp;g_2 = -x_1 \leq 0 \\\\ &amp;amp;g_3 = -x_2 \leq 0 \end{align}$$&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1748603555529&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;최적설계 | 제약조건 문제 수치해법(2): 순차 선형계획법 SLP&quot; data-og-description=&quot;1. 순차 선형계획법 앞서 다룬 바와 같이, 선형 테일러 급수 전개로 비선형&amp;middot;제약조건 최적설계문제를 선형화하였다면 해당 문제에 선형계획법을 적용할 수 있다. 이처럼 설계 변화량을 계산하&quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/130&quot; data-og-url=&quot;https://vedacube.tistory.com/130&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/myoR0/hyY0tviTsl/t7unez5HkxvGtt9sfhN5LK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/2xioD/hyY1g92ulb/KnNE4sOTbggeRycqHm1DG0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/chctqd/hyY0wleEzd/Ls988keCF1aBL6EWZIHAsK/img.png?width=2597&amp;amp;height=1772&amp;amp;face=0_0_2597_1772&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/130&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/130&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/myoR0/hyY0tviTsl/t7unez5HkxvGtt9sfhN5LK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/2xioD/hyY1g92ulb/KnNE4sOTbggeRycqHm1DG0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/chctqd/hyY0wleEzd/Ls988keCF1aBL6EWZIHAsK/img.png?width=2597&amp;amp;height=1772&amp;amp;face=0_0_2597_1772');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;최적설계 | 제약조건 문제 수치해법(2): 순차 선형계획법 SLP&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 순차 선형계획법 앞서 다룬 바와 같이, 선형 테일러 급수 전개로 비선형&amp;middot;제약조건 최적설계문제를 선형화하였다면 해당 문제에 선형계획법을 적용할 수 있다. 이처럼 설계 변화량을 계산하&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Noto Sans Light;&quot;&gt;-&amp;nbsp;&lt;span style=&quot;color: #222222;&quot;&gt;Arora, J. S. (2016).&amp;nbsp;&lt;/span&gt;&lt;i&gt;Introduction to optimum design&lt;/i&gt;&lt;span style=&quot;color: #222222;&quot;&gt;. Elsevier.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;</description>
      <category>Engineering/Optimum Design</category>
      <category>공학</category>
      <category>최적설계</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/123</guid>
      <comments>https://vedacube.tistory.com/123#entry123comment</comments>
      <pubDate>Fri, 2 May 2025 18:00:16 +0900</pubDate>
    </item>
    <item>
      <title>파이썬 | 세트 메소드: update, pop, discard</title>
      <link>https://vedacube.tistory.com/362</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/358&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 파이썬&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/347&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 기본 기능과 규칙&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 변수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.1. 기본자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/356&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1.1. 정수형, 실수형, 논리형, 문자열&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.2. 복합자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/149&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.1. 리스트, 튜플&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/355&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.2. 딕셔너리, 세트&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.3. 자료형 메소드&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/359&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 리스트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/361&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.2. 딕셔너리 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/362&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.3. 세트 메소드 ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/349&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.4. 객체 복사&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 조건문과 반복문&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/328&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. if-elif-else, while, for&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/234&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. range, enumerate, zip&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/165&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.3. break, continue&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 예외 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/295&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. try-except&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 사용자 정의 함수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/145&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. def-return&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/137&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 매개변수와 전달인자&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/323&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 지역변수와 전역변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 모듈, 패키지, 라이브러리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/322&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. impoart-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 파일 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/151&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 메모장 파일 쓰고 읽기&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/402&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. with-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 객체 지향 프로그래밍&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/152&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 클래스와 인스턴스&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/350&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 속성과 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
  &lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/161&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 클래스 상속&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;letter-spacing: 0px; font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;1. update()&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;5749&quot; data-origin-height=&quot;608&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/J6i75/btsL9uaePld/kKAeljlxe6o8WC9C3GCBHK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/J6i75/btsL9uaePld/kKAeljlxe6o8WC9C3GCBHK/img.png&quot; data-alt=&quot;update() 메소드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/J6i75/btsL9uaePld/kKAeljlxe6o8WC9C3GCBHK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJ6i75%2FbtsL9uaePld%2FkKAeljlxe6o8WC9C3GCBHK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;803&quot; height=&quot;85&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;5749&quot; data-origin-height=&quot;608&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;update() 메소드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;update() 메소드는 기&lt;b&gt;존의 세트에 새로운 객체를 추가&lt;/b&gt;한다. 이때 세트는 중복을 허락하지 않으므로, 이미 같은 값을 가지는 객체가 있다면 추가하지 않는다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1738142766277&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;example_set = {1, 2, 3, 4, 5}
a = {3, 4, 5, 6, 7}

example_set.update({1, 8})
print(example_set)

example_set.update(a)
print(example_set)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2. pop()&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;4648&quot; data-origin-height=&quot;605&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bArjn5/btsL9JZiEvv/SeJcaOuAqadJk8DCKMkzC1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bArjn5/btsL9JZiEvv/SeJcaOuAqadJk8DCKMkzC1/img.png&quot; data-alt=&quot;pop() 메소드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bArjn5/btsL9JZiEvv/SeJcaOuAqadJk8DCKMkzC1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbArjn5%2FbtsL9JZiEvv%2FSeJcaOuAqadJk8DCKMkzC1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;652&quot; height=&quot;85&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;4648&quot; data-origin-height=&quot;605&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;pop() 메소드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;pop() 메소드는 &lt;b&gt;세트 내에 있는 객체 하나를 무작위로 선택하여 삭제&lt;/b&gt;한다. 이때 삭제된 객체는 반환되므로, 이를 변수에 할당하여 활용할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1738143085473&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;example_set = {1, 2, 3, 4, 5}

b = example_set.pop()
print(example_set)
print(b)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3. discard()&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;4870&quot; data-origin-height=&quot;590&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/EmFg8/btsMaxqhcta/KCzYOj8MqHtkQAxCeXrwm1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/EmFg8/btsMaxqhcta/KCzYOj8MqHtkQAxCeXrwm1/img.png&quot; data-alt=&quot;discard() 메소드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/EmFg8/btsMaxqhcta/KCzYOj8MqHtkQAxCeXrwm1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FEmFg8%2FbtsMaxqhcta%2FKCzYOj8MqHtkQAxCeXrwm1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;703&quot; height=&quot;85&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;4870&quot; data-origin-height=&quot;590&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;discard() 메소드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;discard() 메소드는 &lt;b&gt;세트 내에 있는 특정 객체를 지정하여 삭제&lt;/b&gt;한다. 괄호 안에 삭제하고자 하는 값을 가진 객체를 입력하면 된다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1738143157408&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;example_set = {1, 2, 3, 4, 5}

example_set.discard(3)
print(example_set)&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1766058937748&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;파이썬 | 복합자료형(2): 딕셔너리, 세트&quot; data-og-description=&quot;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/355&quot; data-og-url=&quot;https://vedacube.tistory.com/355&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/crE5Oe/hyZPYUrOsc/jZX5N2bBV1Xuku7kEYbzL0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cD8Ayl/hyZOLo9E5Y/mn1cXgbHs3DXANCKrV7Ubk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/355&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/355&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/crE5Oe/hyZPYUrOsc/jZX5N2bBV1Xuku7kEYbzL0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cD8Ayl/hyZOLo9E5Y/mn1cXgbHs3DXANCKrV7Ubk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;파이썬 | 복합자료형(2): 딕셔너리, 세트&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;- 박진수. (2019). 바로 쓰는 파이썬. 서울대학교출판문화원.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Programming/Python</category>
      <category>파이썬</category>
      <category>프로그래밍</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/362</guid>
      <comments>https://vedacube.tistory.com/362#entry362comment</comments>
      <pubDate>Fri, 25 Apr 2025 18:00:39 +0900</pubDate>
    </item>
    <item>
      <title>파이썬 | 딕셔너리 메소드: update, popitem, pop, keys, values, items</title>
      <link>https://vedacube.tistory.com/361</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/358&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 파이썬&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/347&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 기본 기능과 규칙&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 변수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.1. 기본자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/356&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1.1. 정수형, 실수형, 논리형, 문자열&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.2. 복합자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/149&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.1. 리스트, 튜플&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/355&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.2. 딕셔너리, 세트&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.3. 자료형 메소드&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/359&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 리스트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/361&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.2. 딕셔너리 메소드 ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/362&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.3. 세트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/349&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.4. 객체 복사&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 조건문과 반복문&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/328&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. if-elif-else, while, for&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/234&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. range, enumerate, zip&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/165&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.3. break, continue&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 예외 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/295&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. try-except&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 사용자 정의 함수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/145&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. def-return&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/137&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 매개변수와 전달인자&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/323&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 지역변수와 전역변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 모듈, 패키지, 라이브러리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/322&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. impoart-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 파일 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/151&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 메모장 파일 쓰고 읽기&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/402&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. with-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 객체 지향 프로그래밍&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/152&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 클래스와 인스턴스&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/350&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 속성과 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
  &lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/161&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 클래스 상속&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;letter-spacing: 0px; font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;1. update()&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;6010&quot; data-origin-height=&quot;647&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ckmm4X/btsL7fR6ho5/J7Eap3Qjh2YwOE0U8pF8D1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ckmm4X/btsL7fR6ho5/J7Eap3Qjh2YwOE0U8pF8D1/img.png&quot; data-alt=&quot;update() 메소드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ckmm4X/btsL7fR6ho5/J7Eap3Qjh2YwOE0U8pF8D1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fckmm4X%2FbtsL7fR6ho5%2FJ7Eap3Qjh2YwOE0U8pF8D1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;786&quot; height=&quot;85&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;6010&quot; data-origin-height=&quot;647&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;update() 메소드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;update() 메소드는 &lt;b&gt;기존의 딕셔너리에 객체를 새롭게 추가&lt;/b&gt;한다. 해당 메소드를 이용해 세 가지 방법으로 객체를 추가할 수 있는데, 딕셔너리를 입력하거나, 키워드 전달인자를 이용하거나, 키와 매핑값의 쌍으로 이루어진 리스트를 이용하면 된다. &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;해당 메소드를 사용하지 않고도 딕셔너리에 객체를 추가할 수 있겠지만, 이를 이용하면 여러 개의 요소를 한꺼번에 추가할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1738052061977&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;example_dict = {}

example_dict.update({1:'a'})			# 딕셔너리

example_dict.update(2='b', 3='c')		# 키워드 전달인자

contents = [(4, 'd'), (5,'e'), (6, 'f')]	# 리스트
example_dict.update(contents)

print(example_dict)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;2. popitem()&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;5662&quot; data-origin-height=&quot;608&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/BUj1t/btsL81dPUW1/kJ5oJbKu1Zj0WIKsbv0XVK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/BUj1t/btsL81dPUW1/kJ5oJbKu1Zj0WIKsbv0XVK/img.png&quot; data-alt=&quot;popitem() 메소드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/BUj1t/btsL81dPUW1/kJ5oJbKu1Zj0WIKsbv0XVK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FBUj1t%2FbtsL81dPUW1%2FkJ5oJbKu1Zj0WIKsbv0XVK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;795&quot; height=&quot;85&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;5662&quot; data-origin-height=&quot;608&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;popitem() 메소드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;popitem() 메소드는 &lt;b&gt;딕셔너리에 마지막으로 추가되었던 객체를 추출하여 반환한 후 딕셔너리에서 삭제&lt;/b&gt;한다. 이때 삭제된 객체는 변수에 할당하여 활용할 수 있으며, 키와 매핑값으로 이루어진 튜플로 저장된다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1738052314158&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;example_dict = {
    1:'a',
    2:'b',
    3:'c',
    4:'d',
    5:'e'
}

f = example_dict.popitem()
print(example_dict)
print(f)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;3. pop()&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;5080&quot; data-origin-height=&quot;605&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Exo9s/btsL8lKPbRs/Uo91RFa0iO22X4kKg1CIak/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Exo9s/btsL8lKPbRs/Uo91RFa0iO22X4kKg1CIak/img.png&quot; data-alt=&quot;pop() 메소드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Exo9s/btsL8lKPbRs/Uo91RFa0iO22X4kKg1CIak/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FExo9s%2FbtsL8lKPbRs%2FUo91RFa0iO22X4kKg1CIak%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;717&quot; height=&quot;85&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;5080&quot; data-origin-height=&quot;605&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;pop() 메소드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;pop() 메소드는 &lt;b&gt;딕셔너리에서 삭제하고자 하는 객체의 키를 지정하여 삭제&lt;/b&gt;할 수 있다. 이때 삭제한 객체의 매핑값을 반환하므로, 변수에 이를 할당하여 활용할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1738052416910&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;example_dict = {
    1:'a',
    2:'b',
    3:'c',
    4:'d',
    5:'e'
}

g = example_dict.pop(3)
print(example_dict)
print(g)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;4. keys()&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;4938&quot; data-origin-height=&quot;603&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kDgrq/btsL9osSeSY/Z7Kic12wpOO689JNxQsw9k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kDgrq/btsL9osSeSY/Z7Kic12wpOO689JNxQsw9k/img.png&quot; data-alt=&quot;keys() 메소드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kDgrq/btsL9osSeSY/Z7Kic12wpOO689JNxQsw9k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkDgrq%2FbtsL9osSeSY%2FZ7Kic12wpOO689JNxQsw9k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;696&quot; height=&quot;85&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;4938&quot; data-origin-height=&quot;603&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;keys() 메소드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;keys() 메소드는 &lt;b&gt;딕셔너리 내 모든 객체의 키를 읽기 전용 리스트로 반환&lt;/b&gt;한다. 이때 반환된 리스트는 읽기 전용이므로, 이를 일반 리스트처럼 다루고 싶다면 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;아래 예시처럼 리스트로 형 변환을 하면 된다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1738052608060&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;example_dict = {
    1:'a',
    2:'b',
    3:'c',
    4:'d',
    5:'e'
}

h = example_dict.keys()		# 읽기 전용 리스트
print(h, type(h))

h = list(h)			# 리스트로 형변환
print(h, type(h))&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;5. values()&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;5197&quot; data-origin-height=&quot;582&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/mZ7u4/btsL9aBA3Ye/XvtzUO8x3kKlZGldFk8qp0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/mZ7u4/btsL9aBA3Ye/XvtzUO8x3kKlZGldFk8qp0/img.png&quot; data-alt=&quot;values() 메소드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/mZ7u4/btsL9aBA3Ye/XvtzUO8x3kKlZGldFk8qp0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FmZ7u4%2FbtsL9aBA3Ye%2FXvtzUO8x3kKlZGldFk8qp0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;761&quot; height=&quot;85&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;5197&quot; data-origin-height=&quot;582&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;values() 메소드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;values() 메소드는 &lt;b&gt;딕셔너리 내 모든 객체의 매핑값을 읽기 전용 리스트로 반환&lt;/b&gt;한다. 이때 반환된 리스트는 읽기 전용이므로, 이를 일반 리스트처럼 다루고 싶다면 아래 예시처럼 리스트로 형 변환을 하면 된다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1738052683292&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;example_dict = {
    1:'a',
    2:'b',
    3:'c',
    4:'d',
    5:'e'
}

i = example_dict.values()	# 읽기 전용 리스트
print(i, type(i))

i = list(i)			# 리스트로 형변환
print(i, type(i))&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;6. items()&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;5015&quot; data-origin-height=&quot;584&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c7vT5Z/btsL7M23A0g/MjYCKSHuf4HjKKsPNnzpH1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c7vT5Z/btsL7M23A0g/MjYCKSHuf4HjKKsPNnzpH1/img.png&quot; data-alt=&quot;items() 메소드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c7vT5Z/btsL7M23A0g/MjYCKSHuf4HjKKsPNnzpH1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc7vT5Z%2FbtsL7M23A0g%2FMjYCKSHuf4HjKKsPNnzpH1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;731&quot; height=&quot;85&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;5015&quot; data-origin-height=&quot;584&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;items() 메소드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;items() 메소드는 &lt;b&gt;딕셔너리 내 모든 객체를 읽기 전용 리스트로 반환&lt;/b&gt;한다. 이때 모든 객체는 &lt;b&gt;키와 매핑값으로 이루어진 튜플로 변환&lt;/b&gt;되어 리스트로 저장된다. 반환된 객체는 변수에 할당하여 활용할 수 있으며, 일반 리스트처럼 다루고자 한다면 아래 예시처럼 리스트로 형 변환을 하면 된다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1738052720491&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;example_dict = {
    1:'a',
    2:'b',
    3:'c',
    4:'d',
    5:'e'
}

j = example_dict.items()	# 읽기 전용 리스트
print(j, type(j))

j = list(j)			# 리스트로 형변환
print(j, type(j))&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1766058897509&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;파이썬 | 복합자료형(2): 딕셔너리, 세트&quot; data-og-description=&quot;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/355&quot; data-og-url=&quot;https://vedacube.tistory.com/355&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/crE5Oe/hyZPYUrOsc/jZX5N2bBV1Xuku7kEYbzL0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cD8Ayl/hyZOLo9E5Y/mn1cXgbHs3DXANCKrV7Ubk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/355&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/355&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/crE5Oe/hyZPYUrOsc/jZX5N2bBV1Xuku7kEYbzL0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cD8Ayl/hyZOLo9E5Y/mn1cXgbHs3DXANCKrV7Ubk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;파이썬 | 복합자료형(2): 딕셔너리, 세트&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;- 박진수. (2019). 바로 쓰는 파이썬. 서울대학교출판문화원.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Programming/Python</category>
      <category>파이썬</category>
      <category>프로그래밍</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/361</guid>
      <comments>https://vedacube.tistory.com/361#entry361comment</comments>
      <pubDate>Fri, 18 Apr 2025 18:00:29 +0900</pubDate>
    </item>
    <item>
      <title>파이썬 | 리스트 메소드: append, insert, extend, pop, remove, count, index, reverse, sort</title>
      <link>https://vedacube.tistory.com/359</link>
      <description>&lt;div style=&quot;background-color: #f6f8fa; border: 1px solid #e1e4e8; border-radius: 6px; padding: 20px; margin-bottom: 30px;&quot;&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;font-weight: bold; text-decoration: underline; text-underline-offset: 3px; color: #333;&quot; href=&quot;https://vedacube.tistory.com/358&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1. 파이썬&lt;/a&gt; &lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/347&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;1.1. 기본 기능과 규칙&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;2. 변수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.1. 기본자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/356&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.1.1. 정수형, 실수형, 논리형, 문자열&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.2. 복합자료형&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/149&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.1. 리스트, 튜플&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/355&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.2.2. 딕셔너리, 세트&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; font-size: 0.95em; list-style: none;&quot;&gt;&lt;span style=&quot;color: #333; font-family: 'Noto Sans Light';&quot;&gt;2.3. 자료형 메소드&lt;/span&gt;
&lt;ul style=&quot;margin-top: 5px; margin-bottom: 5px; padding-left: 15px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/359&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.1. 리스트 메소드 ★&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/361&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.2. 딕셔너리 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 3px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.9em;&quot; href=&quot;https://vedacube.tistory.com/362&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.3.3. 세트 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/349&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;2.4. 객체 복사&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;3. 조건문과 반복문&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/328&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.1. if-elif-else, while, for&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/234&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.2. range, enumerate, zip&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/165&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;3.3. break, continue&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;4. 예외 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/295&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;4.1. try-except&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;5. 사용자 정의 함수&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/145&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.1. def-return&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/137&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.2. 매개변수와 전달인자&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/323&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;5.3. 지역변수와 전역변수&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;6. 모듈, 패키지, 라이브러리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/322&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;6.1. impoart-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;7. 파일 처리&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/151&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.1. 메모장 파일 쓰고 읽기&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/402&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;7.2. with-as&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 style=&quot;margin: 0 0 8px 0; font-size: 1.1em; color: #24292e;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #333; font-family: 'Noto Sans Light';&quot;&gt;8. 객체 지향 프로그래밍&lt;/span&gt;&lt;/h3&gt;
&lt;ul style=&quot;margin-top: 8px; margin-bottom: 8px; padding-left: 20px; border-left: 2px solid #e1e4e8; margin-left: 5px;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/152&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.1. 클래스와 인스턴스&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/350&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.2. 속성과 메소드&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
  &lt;li style=&quot;margin-bottom: 5px; list-style: none;&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;a style=&quot;text-decoration: underline; text-underline-offset: 3px; color: #333; font-size: 0.95em;&quot; href=&quot;https://vedacube.tistory.com/161&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;8.3. 클래스 상속&lt;/a&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;1. append()&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;4921&quot; data-origin-height=&quot;618&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c5Diaw/btsL3QxAfiY/KZPGswSIJqqEIiZW8LktbK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c5Diaw/btsL3QxAfiY/KZPGswSIJqqEIiZW8LktbK/img.png&quot; data-alt=&quot;append() 메소드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c5Diaw/btsL3QxAfiY/KZPGswSIJqqEIiZW8LktbK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc5Diaw%2FbtsL3QxAfiY%2FKZPGswSIJqqEIiZW8LktbK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;676&quot; height=&quot;85&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;4921&quot; data-origin-height=&quot;618&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;append() 메소드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;append() 메소드는 &lt;b&gt;기존의 리스트 마지막 위치에 새로운 객체를 추가&lt;/b&gt;한다. 괄호 안에 추가하고자 하는 객체를 입력하면 된다.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;정수, 실수, 문자열 등 다양한 자료형의 객체를 해당 메소드로 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;추가할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1738046948601&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;example_list = []

example_list.append(1)
print(example_list)

example_list.append('2')
print(example_list)

example_list.append([3.0, '4', 5])
print(example_list)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;2. insert()&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;5178&quot; data-origin-height=&quot;670&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/beq5jB/btsL2PlFKz8/tkJzwYNcBN1dhVsKxkRwI1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/beq5jB/btsL2PlFKz8/tkJzwYNcBN1dhVsKxkRwI1/img.png&quot; data-alt=&quot;insert() 메소드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/beq5jB/btsL2PlFKz8/tkJzwYNcBN1dhVsKxkRwI1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbeq5jB%2FbtsL2PlFKz8%2FtkJzwYNcBN1dhVsKxkRwI1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;736&quot; height=&quot;95&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;5178&quot; data-origin-height=&quot;670&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;insert() 메소드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;insert() 메소드는 &lt;b&gt;사용자가 지정하는 특정한 위치에 새로운 객체를 추가&lt;/b&gt;한다. 괄호 안에 인덱스 번호와, 해당 위치에 추가하고자 하는 객체를 입력하면 된다. &lt;span style=&quot;font-family: 'Noto Sans Light'; color: #333333; text-align: justify;&quot;&gt;정수, 실수, 문자열 등 다양한 자료형의 객체를 해당 메소드로 추가할 수 있다.&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1738047041960&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;example_list = [1, 3.0, 5]

example_list.insert(1, '2')
print(example_list)

example_list.insert(3, '4')
print(example_list)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;3. extend()&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;5113&quot; data-origin-height=&quot;647&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bT9UIO/btsL5rDaWGY/uKSGYHukuy5vkkfO7Ezl61/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bT9UIO/btsL5rDaWGY/uKSGYHukuy5vkkfO7Ezl61/img.png&quot; data-alt=&quot;extend() 메소드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bT9UIO/btsL5rDaWGY/uKSGYHukuy5vkkfO7Ezl61/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbT9UIO%2FbtsL5rDaWGY%2FuKSGYHukuy5vkkfO7Ezl61%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;750&quot; height=&quot;95&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;5113&quot; data-origin-height=&quot;647&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;extend() 메소드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;extend() 메소드는 &lt;b&gt;입력 받은 복합자료형 객체를 모두 추출하여 기존의 리스트에 연장&lt;/b&gt;한다. 앞서 살펴보았던 append() 메소드와는 다르게 복합자료형 객체만 입력할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1738047174631&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;example_list = []

example_list.extend([1])
print(example_list)

example_list.extend(['2'])
print(example_list)

example_list.extend([3.0, '4', 5])
print(example_list)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;4. pop()&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;4877&quot; data-origin-height=&quot;1353&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/WyvLa/btsL4FJUc7W/nayAidYRWfOcPWHmK74RaK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/WyvLa/btsL4FJUc7W/nayAidYRWfOcPWHmK74RaK/img.png&quot; data-alt=&quot;pop() 메소드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/WyvLa/btsL4FJUc7W/nayAidYRWfOcPWHmK74RaK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FWyvLa%2FbtsL4FJUc7W%2FnayAidYRWfOcPWHmK74RaK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;702&quot; height=&quot;195&quot; data-filename=&quot;1.png&quot; data-origin-width=&quot;4877&quot; data-origin-height=&quot;1353&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;pop() 메소드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;pop() 메소드는 &lt;b&gt;리스트에서 가장 마지막에 있는 객체를 삭제&lt;/b&gt;한다. 이때 삭제한 객체를 반환하므로, 변수에 이를 할당하여 활용할 수 있다.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;만약 리스트에서 특정 위치에 있는 객체를 삭제하고 싶다면, 그 객체에 해당하는 &lt;b&gt;인덱스 번호&lt;/b&gt;를 괄호 안에 입력하면 된다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1738047271071&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;example_list = [1, '2', 3.0, ['4', 5], 6]

a = example_list.pop()
print(example_list)
print(a)

b = example_list.pop(1)
print(example_list)
print(b)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;5. remove()&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;5088&quot; data-origin-height=&quot;662&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cf63AW/btsL4YVGTeA/MBAQfKHYWe4HIOG94PUI5k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cf63AW/btsL4YVGTeA/MBAQfKHYWe4HIOG94PUI5k/img.png&quot; data-alt=&quot;remove() 메소드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cf63AW/btsL4YVGTeA/MBAQfKHYWe4HIOG94PUI5k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcf63AW%2FbtsL4YVGTeA%2FMBAQfKHYWe4HIOG94PUI5k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;729&quot; height=&quot;95&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;5088&quot; data-origin-height=&quot;662&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;remove() 메소드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;remove() 메소드는 &lt;b&gt;삭제하고자 하는 객체의 값을 직접 지정하여 삭제&lt;/b&gt;한다. 괄호 안에 리스트에서 삭제하고자 하는 값을 입력하면 된다. 만약 리스트에 같은 값을 가진 객체가 여러 개 존재한다면, 인덱스 번호 순서를 따라 &lt;b&gt;왼쪽에서&amp;nbsp;첫 번째 객체를 먼저 삭제&lt;/b&gt;한다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1738047432621&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;example_list = [1, '2', 3.0, '2', 4]

example_list.remove('2')
print(example_list)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;6. count()&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;5366&quot; data-origin-height=&quot;653&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/qm2j2/btsL52KU3iW/D4UL8WEvwEx7DrZTCkVJTK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/qm2j2/btsL52KU3iW/D4UL8WEvwEx7DrZTCkVJTK/img.png&quot; data-alt=&quot;count() 메소드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/qm2j2/btsL52KU3iW/D4UL8WEvwEx7DrZTCkVJTK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fqm2j2%2FbtsL52KU3iW%2FD4UL8WEvwEx7DrZTCkVJTK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;778&quot; height=&quot;95&quot; data-filename=&quot;2.png&quot; data-origin-width=&quot;5366&quot; data-origin-height=&quot;653&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;count() 메소드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;count() 메소드는 &lt;b&gt;리스트에서 특정 값을 가진 객체가 몇 개 있는지 반환&lt;/b&gt;하며, &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;반환되는 값을 변수에 할당하여 활용할 수 있다. 리스트에서 확인하고자 하는 값을 &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;괄호 안에 입력하면 된다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1738047521485&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;example_list = [1, '2', 3.0, ['4', 5], 6, (1, '2'), 7.0, '8', '2']

f = example_list.count('2')
print(f)

g = example_list.count('4')
print(g)

h = example_list.count((1, '2'))
print(h)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;7. index()&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;5253&quot; data-origin-height=&quot;659&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bn3Qg1/btsL6XV9bYM/L5HRHQgDuT2NtTriGGjDV1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bn3Qg1/btsL6XV9bYM/L5HRHQgDuT2NtTriGGjDV1/img.png&quot; data-alt=&quot;index() 메소드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bn3Qg1/btsL6XV9bYM/L5HRHQgDuT2NtTriGGjDV1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbn3Qg1%2FbtsL6XV9bYM%2FL5HRHQgDuT2NtTriGGjDV1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;756&quot; height=&quot;95&quot; data-filename=&quot;3.png&quot; data-origin-width=&quot;5253&quot; data-origin-height=&quot;659&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;index() 메소드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;index() 메소드는 &lt;b&gt;찾고자 하는 객체가 리스트 내에서 몇 번 인덱스에 있는지 반환&lt;/b&gt;하며, 반환되는 값을 변수에 할당하여 활용할 수 있다. 만약 리스트 내에 동일한 값을 가진 객체가 여러 개 존재한다면,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;인덱스 0번을 시작으로 탐색하여 먼저 발견한 객체의 인덱스 번호를 반환한다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1738047704283&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;example_list = [1, '2', 3.0, ['4', 5], 6, (1, '2'), 7.0, '8', '2']

i = example_list.index('2')
print(i)

j = example_list.index('4')
print(j)

k = example_list.index(['4', 5])
print(k)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;8. reverse()&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;4592&quot; data-origin-height=&quot;626&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/rARWE/btsL4OUeVSY/A7c7OsBZqpkAnenauYYV1K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/rARWE/btsL4OUeVSY/A7c7OsBZqpkAnenauYYV1K/img.png&quot; data-alt=&quot;reverse() 메소드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/rARWE/btsL4OUeVSY/A7c7OsBZqpkAnenauYYV1K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FrARWE%2FbtsL4OUeVSY%2FA7c7OsBZqpkAnenauYYV1K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;698&quot; height=&quot;95&quot; data-filename=&quot;4.png&quot; data-origin-width=&quot;4592&quot; data-origin-height=&quot;626&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;reverse() 메소드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;reverse() 메소드는 &lt;b&gt;리스트 내에 있는 객체의 순서를 반대로 뒤집는다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1738047888626&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;example_list = [1, '2', 3.0, ['4', 5], 6, (1, '2'), 7.0, '8', '2']

example_list.reverse()
print(example_list)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;9. sort()&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;3859&quot; data-origin-height=&quot;616&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bWRpup/btsL4Ma9es1/rehCQkZ2xEle6jaseCBrdk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bWRpup/btsL4Ma9es1/rehCQkZ2xEle6jaseCBrdk/img.png&quot; data-alt=&quot;sort() 메소드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bWRpup/btsL4Ma9es1/rehCQkZ2xEle6jaseCBrdk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbWRpup%2FbtsL4Ma9es1%2FrehCQkZ2xEle6jaseCBrdk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;596&quot; height=&quot;95&quot; data-filename=&quot;5.png&quot; data-origin-width=&quot;3859&quot; data-origin-height=&quot;616&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;sort() 메소드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&amp;nbsp; &amp;nbsp;sort() 메소드는 &lt;b&gt;리스트의 객체를 오름차순이나 알파벳 순서로 정렬&lt;/b&gt;한다. 모든 객체는 서로 동등하게 비교할 수 있어야 하므로, 해당 메소드를 사용하려면&amp;nbsp;리스트의 모든 객체가 정수 혹은 실수이거나, 문자열이어야 한다. 만약 내림차순이나 알파벳 반대 순서로 정렬하고 싶다면 아래 예시처럼 키워드 전달인자를 추가로 입력하면 된다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1738047950425&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;example_list = [1, 5.0, 2, 7.0, 4]

example_list.sort()
print(example_list)

example_list.sort(reverse=True)
print(example_list)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;[함께 읽으면 좋은 페이지]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1766058839423&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;파이썬 | 복합자료형(1): 리스트, 튜플&quot; data-og-description=&quot;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2. &quot; data-og-host=&quot;vedacube.tistory.com&quot; data-og-source-url=&quot;https://vedacube.tistory.com/149&quot; data-og-url=&quot;https://vedacube.tistory.com/149&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/vansX/hyZP8Qh0Qf/bXhwnk0yd9k40DcnYyUpSK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bi1CAO/hyZPXaai5W/LMfIMUytET9YfV0LBOixw0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800&quot;&gt;&lt;a href=&quot;https://vedacube.tistory.com/149&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://vedacube.tistory.com/149&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/vansX/hyZP8Qh0Qf/bXhwnk0yd9k40DcnYyUpSK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bi1CAO/hyZPXaai5W/LMfIMUytET9YfV0LBOixw0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;파이썬 | 복합자료형(1): 리스트, 튜플&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1. 파이썬 1.1. 기본 기능과 규칙 2. 변수2.1. 기본자료형 2.1.1. 정수형, 실수형, 논리형, 문자열 2.2. 복합자료형 2.2.1. 리스트, 튜플 2.2.2. 딕셔너리, 세트 2.3. 자료형 메소드 2.3.1. 리스트 메소드 2.3.2.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;vedacube.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;참고문헌&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;- 박진수. (2019). 바로 쓰는 파이썬. 서울대학교출판문화원.&lt;/span&gt;&lt;/p&gt;</description>
      <category>Programming/Python</category>
      <category>파이썬</category>
      <category>프로그래밍</category>
      <author>Kim Taehwan</author>
      <guid isPermaLink="true">https://vedacube.tistory.com/359</guid>
      <comments>https://vedacube.tistory.com/359#entry359comment</comments>
      <pubDate>Fri, 11 Apr 2025 18:00:30 +0900</pubDate>
    </item>
  </channel>
</rss>