이 애플리케이션의 목적은 선형 최적화를 위한 객체 모델을 생성하고 해결하기 위한 편리한 도구를 제공하는 것입니다.
선형 계획법(LP)이라고도 불리는 선형 최적화는 요구 사항과 목표가 선형 관계로 표현되는 수학적 모델에서 최상의 결과(예: 최대(최소) 이익 또는 최저 비용)를 달성하는 방법입니다. 선형 프로그래밍은 수학 프로그래밍(수학적 최적화라고도 함)의 특별한 경우입니다.
선형 계획(이 앱의 의미에서 모델)은 표준 형식(Wikipedia)으로 표현될 수 있는 문제입니다.- 벡터 x를 찾습니다. - Z = cx를 최대화(최소화)합니다. - Ax<=b – 최대화( Ax>=b – 최소화);- 및 x>=0에 적용됩니다. 여기서 x의 구성요소는 결정할 변수이고, c와 b는 벡터이고, A는 행렬입니다.
애플리케이션의 초기 활동 – App Linear Optimization부터 모델 생성, 편집, 해결 및 삭제 기능이 포함되어 있습니다. 모델은 선형 프로그래밍.db라는 이름으로 SQLite 데이터베이스에 저장됩니다. 이 애플리케이션에는 장치의 다운로드 디렉터리에 데이터베이스를 저장하고 복원하는 기능이 있습니다.
최적화 모델을 생성할 때 벡터 x 변수의 수와 제약 조건의 수(변수에 대한 제약 조건은 포함되지 않음), 즉 행렬 A의 행 등 두 개의 매개변수가 입력됩니다(선형 모델 활동). 이러한 데이터를 입력하고 선형 모델 버튼을 누른 후 선형 모델 생성 활동에서 모델 데이터 입력을 진행합니다.
벡터 x 계수 c는 레이블 *Xi+ 앞에 레이블 Z=가 있는 줄에 입력됩니다.
행렬 А의 요소는 필드 레이블 *Xi+ 앞에 있는 Constraints라는 테이블에 입력됩니다. 레이블 <= 뒤의 행렬 각 행의 마지막 필드에는 제약 조건의 경계 b도 입력됩니다. 이러한 데이터를 입력하고 확인 버튼을 누르면 활동 - 선형 모델 활동으로 돌아가며 여기에는 모델 이름에 대한 필수 필드와 저장 버튼이 나타납니다.
모델이 저장되면 애플리케이션의 초기 활동에 표시되는 모델 목록에 해당 이름이 나타납니다. 목록에서 선택한 모델을 편집(편집 버튼)하거나 해결(계산 버튼)할 수 있습니다. 편집하고 저장한 후 편집된 버전은 새 모델로 저장되며 이전 버전은 데이터베이스에 변경되지 않은 상태로 유지됩니다. 이는 두 모델을 모두 해석하고 결과를 비교할 수 있도록 하기 위한 것입니다. 그 중 일부가 필요하지 않은 경우 삭제할 수 있습니다.
모델을 해석할 때 결과는 대상 함수 Z의 최대화 및 최소화와 이것이 발생하는 벡터 x 요소의 값과 제약 조건을 보여줍니다.
선형 프로그래밍 모델을 사용하는 산업에는 운송, 에너지, 통신 및 제조가 포함됩니다. 계획, 라우팅, 일정, 할당 및 설계에서 다양한 유형의 문제를 모델링하는 데 유용한 것으로 입증되었습니다.
애플리케이션은 표준 라이브러리 org.apache.commons:commons-math:3.6.1의 최적화 클래스 SimplexSolver를 사용합니다.