본 자료는 국립 창원대학교 메카트로닉스 공학부 1학년 학생을 대상으로 한 공학입문설계 수업 자료입니다. 본 자료는 수업의 교재인 창의 공학 설계 (김진욱 외, 도서출판 GS 인터비젼) 의 내용을 재구성한 것으로 수업보조 자료 이외의 목적이 없음을 알립니다.




최적화 설계
어떤 경우든 최적화 문제는 결국 피해갈 수 없는 문제입니다. 최저의 비용을 유지하기 위해서는 어떻게 해야하는지, 최적의 효율성은 어떻게 추구할 수 있는지 등등의 문제에 대한 고민을 하기 때문인데요. 문제의 수식화를 통해 최적화문제를 이야기 할 수 있습니다.


머그컵을 만드는 것을 예로 들어 보겠습니다. 당연히 머그컵 재조시 들어가는 재료비를 최소화하는 문제를 풀어보도록 하지요. 이때 설계변수를 설정해야합니다. 설계변수는 위에 보이듯이 간단히 높이와 직경으로 생각할 수 있는데요. 조심해야할 것은 가급적 설계변수들은 서로 독립적이어야합니다. 즉, 이 상황에서 부피같은 애들은 의미없는 설계변수이지요. 그리고, 또한 설계변수가 설정되고 나면, 관련 수식을 만들어야하는데요. 사실 이부분이 가장 중요하겠죠. 예제에서는 머그컵이고 재료에 따른 관련 수식은

 
위와 같이 도출되어있다고 보겠습니다. 그리고, 부피는 500이상(즉, 500cc이상)이어야하고, 직경은 5에서 9사이, 높이는 10에서 15사이로 설정된다고 보죠. 물론 해당 함수는 제일 위의 Z이지만, 그 수직에서 A는 재료의 단위면적으로 상수라고 생각하겠습니다.


최소화 문제를 푸는 일반적 수식은 위와 같습니다. Xi들은 설계변수이구요. 그러면, 각 Z들의 합이 최소이면 되겠지요. 만약 최대화 문제라면,


위와 같이 될 것입니다.

 
다시 우리의 문제로 돌아와서 위의 목적함수와 그 제약조건에 대해

 
위 수식을 풀어주면 될 것입니다. 문제는 어떻게 풀 것인가죠...

 
제일 간단한 방법은 변수가 d, h 두개니까 2차원 평면상에서 그냥 그려보는겁니다. 그리고 제약조건에 따른 활용가능 영역을 확인해보고,


찍으면 되겠네요...ㅜ.ㅜ 그러나 이 방법에는 문제가 좀 있지요. 많은 변수를 가지는 경우 확인이 어렵다는 것과, 높은 정확도가 요구될때 오차가 좀 있을 수 있다는....








엑셀을 이용한 최적화 문제의 해법
그래서 일반적으로 많이 사용하는 MS-Office의 Excel을 이용해서 문제를 풀어보도록 하겠습니다. 엑셀을 이용하기 위해서는 몇가지 설정을 좀 추가해야합니다.


엑셀의 시작버튼을 누르고 하단의 엑셀 옵션을 클릭합니다.


추가기능을 클릭하고 이동을 클릭하면


위와 같은 팝업창이 뜹니다. 거기서 해찾기추가기능을 체크하고 확인을 누릅니다.

 
그러면, 메인툴바의 데이터안에 위에서처럼 해찾기라는 아이콘이 생성됩니다. 이를 클릭해보면

 
위와 같은 창이 뜨지요. 일단, 우리의 머그컵문제를 다시 생각해보겠습니다.


위 목적함수와 제약조건을 엑셀에 입력합니다. 초기 높이와 직경은 그냥 0으로 두구요. 나머지 제약조건들을 입력해보죠. 그리고

 


목표셀, 값을 바꿀 셀, 제한 조건이 있는 셀등을 위와 같이 설정해주고 실행을 누르면


간단히 최소비용과 그때의 높이와 직경이 도출됩니다. 





참고자료



http://pinkwink.kr/trackback/204 관련글 쓰기
  • 빨간내복 2009/10/30 03:11

    네! 잘 알겠습니다.

    • PinkWink 2009/10/30 03:50

      히히... 잠와요... 냠...
      잠안오는 약 만들어주세요...ㅜ.ㅜ

  • 탐진강 2009/10/31 14:53

    공학은 역시 아무나 하는 게 아닌 것 같스니다.ㅠㅠ

    • PinkWink 2009/11/01 09:07

      아닙니다.. 공학자는 아무나 되는게 아닌건 확실합니다만...
      공학공부야 아무나 할 수 있지요...ㅋㅋ
      절보면... 공학공부하고 있지만.. 아직 공학자는 멀었다는...켁^^

  • 아고라 2009/11/03 12:01

    헉...서,설마 머크컵 공장에서 컵하나 디자인하는데 저런 공식을 쓰는건....아니겠지요? 쓰나요? 핑크윙크님께서 공식이 적용된다고 말씀하시는 순간, 머그잔에서 느끼는 따뜻한 온기가 사라질 것 같은 TT

    • PinkWink 2009/11/04 05:48

      실제로 사용하는지는 저도 몰라요...(ㅜ.ㅜ)
      그러나... 분명 사업하는 사람들이라면
      원가절감에 대해 고민할 것이고
      그것이 전문가의 감이든 혹은 오랜 데이터를 이용해서이든
      위처럼 수식을 이용하든 어떻게든 수행하겠지요.
      단지 컵이 수식이 간단하길래...
      예제로서 그냥 사용한것이지요..ㅋㅋ

  • 깐돌이 2010/05/17 16:27

    엑셀이 안돌아가요 ㅠㅠ

    • PinkWink 2010/05/17 16:33

      음.. 죄송합니다.. 도움을 드릴 수 없는데요..ㅠㅠ

  • 깐돌이 2010/05/17 16:37

    주인장님...직경과 높이도 =0 이라고 써야하나요?? ㅠㅠ

    • PinkWink 2010/05/17 16:51

      안해줘도되는지는 잘모르겠지만,
      초기값으로 저는 0을 입력했습니다.^^

  • 깐돌이 2010/05/17 17:19

    몇가지 질문좀할께요 엑셀에서 높이와 직경의 셀값이 궁금하구요
    그리고 제한조건에서 높이와 직경의 경우 1. -1 나왔는데..무슨뜻인가요?

    • PinkWink 2010/05/18 02:36

      음.. 중간에 제약조건을 설명하는 수식에 오류가 살짝있네요... 엑셀의 함수사용법때문에 -h>=-15, -d>=-9 라고 되야합니다. 그림상에서 나오는 엑셀의 수식은 그대로 오류없이 입력이 되어있네요. 말씀하신 -1은 그걸 만들기 위한것입니다.