2013-12-17 4 views
1

나는 곧 최적화를 향한 나의 석사 논문을 곧 사용할 예정이며 AMPL의 한계에 관해 몇 가지 질문이있다.큰 문제에 관한 AMPL의 한계

선생님은 ALSL이 예를 들어 구로비 해결사 (예 : 대학에서 제공하는 것)의 정식 라이센스를 사용할 때 거의 모든 상황을 처리 할 것이라고 확신합니다.

그러나 현재 대부분의 논문에서 나는 대부분의 사람들이 C, C#, Python 등과 같은 다른 언어로 유전 알고리즘과 인공 지능을 사용하고 있음을 확인합니다. 다른 언어로 자신의 경험적 방법을 구현하는 것이 더 바람직합니까? 당신이 AMPL에서 당신에게 어떤 솔버의 완전한 라이센스를 가지고 있다면 이것을 제공합니까?

지금까지 우리 대학교는 자신의 경험적 방법을 사용해야 할 때 실용적인 문제가 없었으므로 논문 작업이 시작될 때까지 마지막 코스와 함께 공부해야한다는 것을 의미합니다.

미리 감사드립니다. Cenderze

+2

대부분 문제의 성격에 달려 있습니다. 우리는 반쯤 정답을 쓸 수 있도록 더 자세한 정보가 필요합니다. 그 외에도, StackOverflow는 프로그래밍 및 소프트웨어 개발 관련 질문이며 귀하의 질문은 주제와 관련이 없습니다. 그러나 http://scicomp.stackexchange.com/에서 대답을 얻을 수 있습니다. – Ali

+0

최대한 많은 정보를 제공하고 싶습니다! 그러나 나는 21 세기 1 월에 실제 문제 정의를 받아야한다. 해당 웹 페이지를 알지 못해서 고맙습니다. 나는 스택 오버플로가 더 개념적인 평면에서 프로그래밍과 프로그래밍 사이의 융합과 다소 비슷하다고 생각했기 때문에 고마워! – Cenderze

답변

3

AMPL을 사용하여 경험적 방법을 구현하는 것이 가능하며 많은 사람들이 AMPL의 스크립팅 기능을 사용하거나 다른 언어로 임베드합니다. 이를 통해 해법 API가 제공하는 수준보다 높은 수준에서 작업 할 수 있으며 해법에 독립적 인 방법을 구현할 수 있습니다 (AMPL은 많은 해법에 대한 액세스를 제공합니다).

또 다른 가능성은 MPS와 같은 기존 형식의 입력 방법이나 제한 사항을 작성할 필요가 없으므로 AMPL 솔버로 메서드를 구현하는 것입니다. 이 방법의 예는 SSDSolver입니다. 2 차 확률 우세 지배 제약 문제를 해결하기위한 절단 평면 알고리즘을 구현하고 하위 문제를 해결하기 위해 다른 AMPL 솔버 (예 : cplex)를 사용합니다.

+1

대단히 감사합니다! 나는 그 두 가지 가능성을 어떻게 구분하는지 잘 모르겠지만 이것은 단지 가능성에 대한 질문 일 뿐이므로 당신의 답은 저를 완벽하게 맞습니다! 고맙습니다! – Cenderze