EE364A
Final
Name: Christopher Bongsoo Choy
ID: 05806896
PROBLEM 1
(A)
The problem is
(
And the log_sum_exp is convex nondecreasing and
convex
(
( )
)
is convex so the above function is convex. Let
(
(
( )
(
(
(
(
( )
)
(
) )
(
( )
( )
( )
then the proble
EE364a Convex Optimization I
March 1415 or March 1516, 2008.
Prof. S. Boyd
Final exam solutions
You may use any books, notes, or computer programs (e.g., Matlab, cvx), but you may not
discuss the exam with anyone until March 18, after everyone has taken t
Additional Exercises for Convex Optimization
Stephen Boyd
Lieven Vandenberghe
December 26, 2009
This is a collection of additional exercises, meant to supplement those found in the book Convex
Optimization, by Stephen Boyd and Lieven Vandenberghe. These e
EE364a, Winter 200708
Prof. S. Boyd
EE364a Homework 4 solutions
4.11 Problems involving 1  and norms. Formulate the following problems as LPs. Explain in detail the relation between the optimal solution of each problem and the
solution of its equivalen
EE364a, Winter 201415
Prof. S. Boyd
EE364a Homework 8 solutions
A3.31 Stochastic optimization via Monte Carlo sampling. In (convex) stochastic optimization,
the goal is to minimize a cost function of the form F (x) = E f (x, ), where is
a random variable
Additional Exercises for Convex Optimization
Stephen Boyd
Lieven Vandenberghe
May 7, 2015
This is a collection of additional exercises, meant to supplement those found in the book Convex
Optimization, by Stephen Boyd and Lieven Vandenberghe. These exercis
CVX: A system for disciplined convex programming
Copyright 20052014 CVX Research, Inc.
Professional package

Thank you for your interest in CVX!
INSTALLATION

For full installation instructions, please see the Installation section of the
users' guide,
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2007 Free Software Foundation, Inc. <http:/fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
Th
The CVX Users Guide
Release 2.0 (beta)
Michael C. Grant, Stephen P. Boyd
CVX Research, Inc.
January 18, 2013
CONTENTS
1
2
3
4
5
Introduction
1.1 What is CVX? . . . . . . . . . . . . . . .
1.2 What is disciplined convex programming?
1.3 What CVX is not . .
Convex Optimization Boyd & Vandenberghe
1. Introduction
mathematical optimization
leastsquares and linear programming
convex optimization
example
course goals and topics
nonlinear optimization
brief history of convex optimization
11
Mathematical o
% CVX: Toplevel commands to control CVX.
%
% cvx_begin  Starts a new CVX specification.
% cvx_clear  Clears all active CVX data.
% cvx_end  Completes a cvx specification.
% cvx_pause  Pauses the processing of CVX models.
% cvx_power_warning  Control
function varargout = cvx_version( varargin )
% CVX_VERSION Returns version and environment information for CVX.
%
% When called with no arguments, CVX_VERSION prints out version and
% platform information that is needed when submitting CVX bug reports.
%
CVX: A system for disciplined convex programming
20052014 CVX Research, Inc., Austin, TX.
http:/cvxr.com
[email protected]
Thank you for using CVX!
The files contained in the various CVX distributions come from various sources
and are covered under a varie
function prevpath = cvx_startup( quiet )
%CVX_STARTUP Quietly add CVX to your MATLAB path (for startup).
% Running CVX_STARTUP upon startup ensures that CVX is properly included
% in your MATLAB path.
%
% On Mac and PC systems, this function is not necess
function success = cvx_grbgetkey( kcode, overwrite )
% CVX_GRBGETKEY Retrieves and saves a Gurobi/CVX license.
%
% This function is used to install Gurobi license keys for use in CVX. It
% is called with your Gurobi license code as a string argument; e.g.
function cvx_setup( varargin )
% CVX_SETUP Sets up and tests the cvx distribution.
% This function is to be called any time CVX is installed on a new machine,
% to insure that the paths are set properly and the MEX files are compiled.
global cvx_
try
cv
% CVX: A system for disciplined convex programming.
% CVX is a modeling framework for building, constructing, and solving
% disciplined convex programs.
%
% cvx_setup  Sets up and tests the cvx distribution.
% cvx_error  Formats text for inclusion in e
function lines = cvx_error( errmsg, widths, useline, prefix, chop )
% CVX_ERROR Formats text for inclusion in error messages.
% This is an internal function used by CVX. It needed to be in the CVX
% home directory so that it's available during a fresh ins
GUROBI OPTIMIZATION, INC.
ENDUSER LICENSE AGREEMENT
(Agreement)
Please read the terms and conditions of this license agreement carefully. By installing and enabling the Gurobi Product(s)
you are accepting the terms of this agreement. (The Product(s) will
function cvx_begin( varargin )
%CVX_BEGIN Starts a new CVX specification.
% CVX_BEGIN marks the beginning of a new CVX model. Following this command
% may be variable declarations, objective functions, and constraints, and
% a CVX_END to mark the completi
% CVX_CLEAR Clears all active CVX data.
% CVX_CLEAR clears the current CVX model in progress. This is useful if, for
% example, you have made an error typing in your model and wish to start
% over. Typing this before entering another CVX_BEGIN again avoi
EE364a, Winter 201415
Prof. S. Boyd
EE364a Homework 7 solutions
9.30 Gradient and Newton methods. Consider the unconstrained problem
minimize f (x) =
m
i=1
log(1 aT x)
i
n
i=1
log(1 x2 ),
i
with variable x Rn , and dom f = cfw_x  aT x < 1, i = 1, . .
EE364a, Winter 201415
Prof. S. Boyd
EE364a Homework 3 solutions
3.36 Derive the conjugates of the following functions.
(a) Max function. f (x) = maxi=1,.,n xi on Rn .
Solution. We will show that
f (y) =
0 if y 0, 1T y = 1
otherwise.
We rst verify the do
function s = cvx_where
%CVX_WHERE Returns the location of the CVX system.
% CVX_WHERE returns a string containing the base directory of the CVX
% modeling framework. Within that directory are some useful
% subdirectories and files:
% functions/ new functi
function [ sout, slist ] = cvx_solver( sname )
%CVX_SOLVER CVX solver selection.
% CVX_SOLVER <solver_name> or CVX_SOLVER('<solver_name>')
% selects the named solver the CVX uses to solve models. The solver name
% is caseinsensitive; so, for example, bot
function sout = cvx_solver_settings( varargin )
%CVX_SOLVER_SETTINGS CVX solver settings adjustment.
% CVX_SOLVER_SETTINGS is used to adjust the advaned settings of the
% current solver being used by CVX. Before using this function, please
% read the IM
function cvx_save_prefs( in_setup )
%CVX_SAVE_PREFS Saves current CVX settings for future MATLAB sessions.
% CVX_SAVE_PREFS saves the the current global CVX settings to a special
% prefences file (stored in the "prefdir" directory). This enables CVX to
%
function sout = cvx_quiet( flag )
%CVX_QUIET CVX output control.
% CVX_QUIET(TRUE) suppresses all text output from CVX (except for error and
% warning messages). Specifically, solver progress is not printed.
%
% CVX_QUIET(FALSE) restores full text output.