본문 바로가기
  • ̀⁽ᵕ̈⁾ ́

M.S.28

[OR-Tools 스터디] Solving an LP Problem 여기서는 LP(linear programming) problem의 예제들을 보며 그것들을 어떻게 푸는지를 다룬다. 문제 : Maximize 3x + 4y subject to the following connstraints: 1. x + 2y ≤ 14 2. 3x - y ≥ 0 3. x - y ≤ 2 위 문제에서의 objective function과 constraint들은 linear expression으로 표현되어있다. (즉 linear problem) constraint는 feasible region으로 선언되어있으며, 아래 그림과 같다. Basic steps for solving an LP problem 1. import the linear solver wrapper 2. declare the LP s.. 2023. 2. 7.
[OR-Tools 스터디] Linear Optimization Overview linear optimization(또는 linear probramming)은 선형 관계에 있는 set으로 모델된 문제에 대해 best solution을 계산해주기 위한 것. 이러한 problem들은 과학, 공학적인 분야에서 많이 발생한다. ("programming"이라는 단어가 계산하는 사람이라는 의미로 잘못 오해되었었다. 여기서 programming은 컴퓨터 언어로 프로그래밍 한다기보다는 "the arrangement of a plan"이 더 적합하다) Tools 구글에서는 LP problem을 풀기위한 방법들을 제공해줌 MPSolver (이건 OR-Tools 설치가 요구됨) Linear Optimization add-on for Google Sheets : spreadsheet에 변.. 2023. 2. 7.
[OR-Tools 스터디] About OR-Tools OR-Tools는 가능한 모든 해결책 중 가장 최적의 해결책 하나만을 찾아주는 combinational optimization을 위한 오픈소스소프트웨어이다. OR-Tools로 풀 수 있는 예제들은 vehical routing, schedulinng, bin packing 등이 있다. 이러한 예제들과 같은 문제들은 정답을 너무 많이 가지고 있기때문에 최적의 해결책을 찾기 위해 state-of-the-art알고리즘을 사용하는 OR툴을 활용해야한다. OR-Tool은 Constraint Programming, Linear and Mixed-Integer Programming, Vehicle Routing, Graph Algorithms에 대한 해결책을 가지고 있다. OR-Tools는 C++로 쓰여졌지만 pyth.. 2023. 2. 7.
github 기본 명령어 git branch : 새로운 브런치를 로컬에 생성 git branch : 생성되어있는 브런치 및 현재 선택되어있는 브런치 보기 git checkout : name브런치로 전환됨 git push --set-upstream origin : 로컬에서 생성한 브런치를 원격저장소로 업데이트시켜줌 git clone : 새로운 레포지토리를 로컬로 가져오기 2021. 1. 10.