LP, MILP, NLP, MINLP: AMPL SDP: OCTAVE + YALMIP + SDPT3 + containers.Map Install: - download and install Octave4Windows installer https://ftp.gnu.org/gnu/octave/windows/octave-4.2.1-w64-installer.exe run octave in octave command line, type "pkg install -forge symbolic" - create the "octave" folder in your home (denoted ~/octave below) (it will contain octave packages) - download standard YALMIP distribution https://github.com/yalmip/YALMIP/archive/master.zip . unpack in ~/octave . rename YALMIP-master to YALMIP if necessary . in the octave command window: o addpath(genpath('/Users/[name]/octave/YALMIP')) o savepath() - download SDPT3 for Octave+YALMIP https://github.com/sqlp/sdpt3/archive/master.zip . unpack in ~/octave . rename sdpt3-master to sdpt3 if necessary . in the octave command window: o cd ~/octave/sdpt3 o install_sdpt3 o yalmiptest [check that sdpt3 solver shows up] - download Map.m from http://hg.savannah.gnu.org/hgweb/octave/file/b04466113212/scripts/%2Bcontainers/Map.m . create dir C:\Octave\Octave-4.2.1\share\octave\4.2.1\m\+containers [version ID "4.2.1" might change if you're using another version] . put file Map.m into "+containers" dir - install my code (files in octave-dgp.zip in this dir) into folder C:\Users\[name]\dgp (where [name] is your home dir) - unzip data.zip (gph and protein .dat files), this will create gph and protein data folders Test: - in octave: . cd /Users/[name]/dgp . [P,K] = readAMPLdatpedm('protein/pept_gph.dat'); . [x,ret] = sdprealize(K,P); . showrealization(x);