T

taco

AMPL/TACO Extension for MUSCOD-II

Name Last Update
examples Loading commit data...
src Loading commit data...
readme.txt Loading commit data...
CONTENTS

src/amplsolver
	Should be created and contain the AMPL stub file reader headers
	and source files, as obtained from NETLIB
    After compilation, the sys.x86_64.Linux subdirectory needs a symlink named 
    libamplsolver.a referring to amplsolver.a.

src/funcadd
	source for dynamic link library amplfunc.dll providing dummy functions
	diff(), eval(), and integral() from TACO.
	These are dysfunctional and are provided only to satisfy AMPL. Solvers 
	at the backend of TACO (such as muscodsolver) shall implement
	and register their own counterparts of these functions.

src/frontend
	source for the TACO front end. Reads an AMPL stub .nl file and
	detects the optimal control problem structure. This is supposed to be
	MUSCOD-II agnostic, but hasn't been reported to be useful with any other
	approach to solving optimal control problems.

src/muscodsolver
	source for the MUSCOD-II TACO backend. Uses the frontend to
	automatically set up a MUSCOD-II model and DAT file. The model will
	use interpreted function evaluations provided by amplsolver. 

	Optionally, a C model file can be generated, but won't be used.

	For the knowing ones, the following MUSCOD-II features are not supported:
		- continuous least-squares objectives 
		  (node least-squares is auto-detected and works)
		- user-side multi-stage problems
		  (auto-generated MINTOC multi-stage problems work)
		- implicitly discontinuous ODEs/DAEs
		- s_spec=0 initializations other than constant over time
		  (s_spec=1,2 works)


REQUIREMENTS

	A copy of the source tree of the MUSCOD-II optimal control problem solver is 
	required to build the MUSCOD-II solver backend. 
	
	As MUSCOD-II is not in the public domain, its source code cannot be provided
	along with this MPC submission. We instead provide a compiled AMPL+TACO 
	interface to MUSCOD-II on the NEOS server. It is currently accessible 
	(temporarily in the MILP category) at
	
	http://neos-dev1.discovery.wisc.edu/neos/solvers/milp:MUSCOD-II/AMPL.html	

	It is scheduled to move to the NEOS production server (where it can then be
	found in the new MIOCP category) at
	
	http://www.neos-server.org/neos/solvers/index.html
	
	in due time.

examples
	A collection of OCPs, MIOCPs, parameter estimation problems, and boundary
	value problems converted from the COPS library and the MUSCOD-II test sets.
	
	All models can be solved by submitting the appropriate combination of
	.mod and .run file (and possible .dat file) to MUSCOD-II on the NEOS
	server.