물리적 객체의 디자인을 최적화하는 프로세스를 자동화하려면 어떻게해야합니까?


9

횡단면의 속도와 온도 분포가 비교적 균일하도록 탱크의 유량 분배기를 최적화하려고합니다. 입구 파이프의 수, 위치, 방향 및 방향과 같은 최대 단면 균일도를 조정할 수있는 많은 매개 변수가 있습니다. 여러 가지 다른 형상을 생성하고 각각을 개별적으로 테스트 할 수 있지만 시간이 많이 걸린다는 것을 알고 있습니다. 여러 사례를 한 번에 (병렬로) 반복적으로 테스트하고 이전 결과를 기반으로 테스트 할 새로운 기하학 세트를 적응 적으로 선택할 수있는 프로그램을 작성하고 싶습니다. 어떻게하면 최선을 다할 수 있습니까?


1
매개 변수 검색 부분은 나에게 쉬운 부분입니다. 사소한 부분은 형상을 매개 변수화하는 것입니다.
제프 옥스 베리

답변:


4

그라디언트 기반 방법을 사용하여 모양을 최적화하는 것이 좋습니다. 그것은 본질적으로 모델 함수에 대한 목적 함수의 기울기를 계산해야 함을 의미합니다.

적은 수의 매개 변수의 경우 FD를 사용할 수 있지만 많은 수의 매개 변수의 경우 인접 방법을 조사해야합니다. 상용 코드 또는 인접 방정식을 해결할 수없는 다른 사람의 코드를 사용하는 경우 FD가 유일한 옵션입니다.

기본 기본 모양 최적화 서적을 살펴보십시오.

편집 : 구조적 FE 문제의 경우 Choi와 Kim I 및 II의 책을 확인할 수 있습니다


일부 매개 변수는 정수입니다. 그래디언트 기반 접근 방식을 계속 적용 할 수 있습니까?
Paul

모양 최적화에 대한 좋은 자습서 / 책을 추천하십니까?
Paul

짧거나 간단한 내용은 acdl.mit.edu/mdo/mdo_06/EulerAdjoint.pdf를 참조하십시오 . FD로 말했듯이 그라디언트를 계산해야하므로 (매개 변수 수에 따라 CFD 코드를 여러 번 실행해야 함) 그라디언트를 사용하여 최적화를 수행해야합니다. 일반적으로 모수 추정값이 수렴되기 전에 몇 번의 반복이 필요합니다. 큰 매개 변수의 경우 비용이 많이 들고 그라디언트를 계산하려면 인접한 메서드를 사용해야합니다.
stali

고마워, 스탈 리 그것은 인접한 방법에 대한 아주 좋은 소개였습니다.
Paul

5

지오메트리 구성 파트를 적절하게 매개 변수화하면 이산 매개 변수와 연속 매개 변수가 혼합 된 블랙 박스 최적화 문제입니다.

DAKOTA http://dakota.sandia.gov/ 및 NOMAD http://www.gerad.ca/NOMAD/Project/Home.html 은 자동으로 최상의 매개 변수 선택을 선택할 수있는 유용한 패키지입니다. (DAKOTA는 더 나은 응용 프로그램 지원을 제공하지만 NOMAD는 더 나은 최적화 기능을 제공합니다.)

지오메트리를 변경하려면 지오메트리에 영향을 줄 각 컨트롤에 대해 개별 또는 연속 매개 변수를 도입하고 컨트롤 컬렉션에서 지오메트리 구성을 자동화하십시오. 미분법이없는 방법은 높은 차원에서 상당히 느리므로 매개 변수의 수를 합리적으로 작게 유지하십시오.

위의 패키지 중 하나를 사용하여 공간 탐색을 마친 후에는 분석 파생물을 얻을 수없는 모든 이산 매개 변수 및 모든 연속 매개 변수가 고정되는보다 정확한 최적화를 수행하여 분석을 세분화 할 수 있습니다. 그러나 IPOPT https://projects.coin-or.org/Ipopt 와 같은 그라디언트 기반 최적화 프로그램 은 훨씬 더 큰 문제를 효율적으로 처리 할 수 있으므로 분석 파생물을 계산할 수있는 연속 모양 매개 변수의 수를 늘릴 수 있습니다. .

미분을 얻는 방법을 모르지만 의존성이 부드러 우면 자동 미분 프로그램을 사용하거나 AMPL에서 지속적인 문제를 코딩하는 것을 고려할 수 있습니다.이 경우 솔버 인터페이스가 미분을 처리합니다.

형상 최적화에 대한 기본 사항은 예를 들어 Haftka, RT 및 Grandhi, RV, 구조 형상 최적화-측량, 응용 기계 공학 및 공학 57 (1986), 91-106의 컴퓨터 방법을 참조하십시오. (모델링에 대한 설명을 신뢰하십시오. 그러나 그 이후로 최적화 기술이 크게 향상되었으므로 권장하는 솔버를 사용하지 마십시오.)


형상을 매개 변수화하기 위해 어떤 접근법을 사용할 수 있습니까?
Paul

내 답변에 추가 내용을 참조하십시오.
Arnold Neumaier

@Paul : 방금 글에서 바보 같은 실수를 고쳤습니다. 지오메트리 매개 변수는 물론 이산 적이거나 연속적 일 수 있습니다!
Arnold Neumaier


3

CFD의 표준 파라 메트릭 최적화보다 훨씬 빠른 것처럼 보이는 공간 최적화도 있습니다. 최근에는 CFD 커뮤니티, 특히 OpenFOAM에서 인기가 크게 높아졌습니다. 우리는 현재 OpenFOAM에 관한 워크샵을 조직하고 있으며,이 방법에 관한 많은 초록을 제출했습니다. 당신이 관심이 있다면, 확인 다른 정보를 원하시면, 밖으로 그냥 "CFD에 수반 행렬 공간 형상 최적화를"구글.

추가 정보:

OpenFOAM을 사용할 수 있다면, 많은 경우를 조작하고 PyFoam 이라는 매개 변수를 변경하는 데 사용되는 Python 기반 라이브러리가 있습니다 . 간단한 형상의 경우 메쉬를 간단한 blockMesh 로 정의하고 원하는 것을 반복 할 수 있습니다. 간단한 경우, 이것은 파이썬에서 몇 개의 루프를 작성하는 문제입니다. 다음 은 "입구"경계 조건 속도를 변경하면 스크립트가 어떻게 보이는지 보여줍니다. 간단한 메쉬 지오메트리 변경은 몇 줄 더 코드가 될 것입니다 ...


2

필요한 것 :

  1. 최적화 및
  2. 구체적인 개념 내에서 또는 다른 개념에 속하는 다양한 디자인을 처리 할 수있는 (유연한) CFD 도구.

CFD 도구에는 다음 기능이 중요합니다.

  • 합리적인 시간 내에 많은 양의 개별 설계를 처리하기위한 높은 계산 효율성 (속도).
  • 검색 / 분석 프로세스에 대한 수동 개입을 배제하기 위해 수치 기법의 높은 유연성과 애매 성.
  • 프로그래밍 방식의 기하학 조작.

따라서 다음 소프트웨어를 권장 할 수 있습니다.

  1. 많은 수의 옵티 마이저를 제공하는 Insight Toolkit
  2. 다음을 제공하는 고급 시뮬레이션 라이브러리

    • 고성능 :

      • 라이브러리는 하드웨어 가속으로, 즉 GPU 또는 FPGA 하드웨어 (사용 가능한 경우)를 활용할 수있어 CPU 기반 프로그램에 비해 10-100 속도 향상을 의미합니다. 또한 일반 CPU에서는 SIMD와 같은 고급 기능을 사용합니다.
      • 동적 컴파일 방식을 기반으로하므로 유연성을 위해 성능을 희생 할 필요가 없습니다. 표준 컴파일 기술에 비해 속도가 최대 10 배 향상됩니다.
      • ASL은 클러스터 인프라 및 다중 GPU 컴퓨터에서 사용할 수 있습니다.
    • 높은 유연성과 민첩성 :

      • 메시가없는 수치 기법은 사각형 그리드와 몰입 경계 접근 방식을 기반으로합니다. 메시 생성이 필요하지 않으므로 이러한 기능을 통해 자동화 된 설계 최적화가 가능합니다.
      • 라이브러리는 동적 컴파일 방식을 기반으로하므로 유연성을 위해 성능을 희생 할 필요가 없습니다. 이것은 다른 디자인 / 개념에 대한 하나의 일반적이고 효율적인 알고리즘을 공식화 할 수있게합니다.
    • 기하학적 프리미티브의 생성 및 조작 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.