CEE 201L. Uncertainty, Design, and Optimization.
Department of Civil and Environmental Engineering
Edmund T. Pratt School of Engineering
Duke University - Box 90287, Durham, NC 27708-0287

Henri P. Gavin, Ph.D., P.E., Professor

Assignments (note: due dates are subject to change)

guideline and template for completing assignments

Matlab functions for optimization

These Matlab functions implement methods for minimizing a function of several parameters subject to a set of inequality constraints:
minimize f(x) such that g(x) ≤ 0,
where f is a scalar-valued objective function, x is a vector of design variables, and g is a vector of constraints.

• Examples of running constrained minimization codes
• ORSopt.m implements an optimized step-size random search algorithm.
• NMAopt.m implements a Nelder-Mead algorithm.
• SQPopt.m implements a sequential quadratic programming algorithm.
• avg_cov_func.m calculates average and coefficient of variation of a random penalized objective function.
• box_constraint.m determines the box constraint scaling factor a>0 to the perturbation vector r from x such that: max(x+ar) < +1 and min(x+ar) > -1
• optim_options.m is needed for ORSopt.m, NMAopt.m, and SQPopt.m
• plot_surface.m plots the cost function as a surface over two of the parameter values, ORSopt, NMAopt, or SQPopt
• plot_cvg_hst.m plots the convergence history for the solution computed by ORSopt, NMAopt, or SQPopt

Matlab functions for random variables

These Matlab functions can be used to compute probability distribution functions and to generate samples of random variables.
 Distribution PDF, fX(x) CDF, FX(x) inverse CDF, FX-1(p) generate sample, x1 ... xN uniform unifpdf.m unifcdf.m unifinv.m rand.m triangular triangular_pdf.m triangular_cdf.m triangular_inv.m triangular_rnd.m normal normpdf.m normcdf.m norminv.m randn.m log-normal logn_pdf.m logn_cdf.m logn_inv.m logn_rnd.m Poisson Poisson_pmf.m Poisson_cdf.m Poisson_rnd.m exponential exp_pdf.m exp_cdf.m exp_inv.m exp_rnd.m Rayleigh Rayleigh_pdf.m Rayleigh_cdf.m Rayleigh_inv.m Rayleigh_rnd.m gamma gamma_pdf.m gamma_cdf.m gamma_inv.m gamma_rnd.m Laplace Laplace_pdf.m Laplace_cdf.m Laplace_inv.m Laplace_rnd.m
The m-file MCS_intro.m illustrates the use of a number of these functions.