Top Banner
ENGG 1400: Infrastructure System Optimization Prof S. Travis Waller Dr. Lauren Gardner Email: [email protected] Email [email protected] Room 110, CVEN Building Room 112, CVEN Building Dr. David Rey Email: [email protected]
65
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: ENGG1400_20140731_Lecture1

ENGG 1400:Infrastructure System Optimization

Prof S. Travis Waller Dr. Lauren Gardner Email: [email protected] Email [email protected] 110, CVEN Building Room 112, CVEN Building

Dr. David ReyEmail: [email protected]

Page 2: ENGG1400_20140731_Lecture1

Course Details

Units of Credit 6 Contact hours 4 hours per week Lecture Wednesday, 10am – 1pm

Law Theatre G04(K-F8-G04) Please refer to the timetable for potential updates. http://www.timetable.unsw.edu.au/current/ENGG1400.html

CourseCoordinator and Lecturer

Prof S. Travis WallerEmail: [email protected] Room 110, Civil and Environmental Engineering Building

Lecturer Dr. Lauren GardnerEmail [email protected] Room 112, Civil and Environmental Engineering Building

PTA Dr. David Rey Email: [email protected]

 

Page 3: ENGG1400_20140731_Lecture1

Course Details

VisitingLecturers

Dr. Ken Doust Mr Ian McIntyre

Demonstrators Melissa Duell Email: [email protected] Milad

Ghasrikhouzani Email: [email protected]

Yanni Huang Email: [email protected] Divya J Nair Email:

[email protected] Neeraj Saxena Email: [email protected] Kelly Tang Email: [email protected] Kasun Wijayaratna Email: [email protected] Koray Yurt Email: [email protected]

 

Page 4: ENGG1400_20140731_Lecture1

Information about the course

• This subject is targeted to students in the Faculty of Engineering desiring a greater understanding of how to model various complex systems, including critical infrastructure (e.g., telecommunications, water supply, and transport). This course will provide an introduction to the interdisciplinary concepts and approaches applied by engineers in advanced systems modeling. The expected outcomes of this course are reinforced capability in optimization theory with a view to apply the concepts learned to the analysis of engineering systems, the ability to implement mathematical models to represent, analyse and optimize various engineering systems, and gain the modelling and optimization tools needed for their studies in the field of Engineering.

Page 5: ENGG1400_20140731_Lecture1

Handbook Description• A course in optimization and modelling for first year engineering students

who desire a higher capability in the application of the mathematical modelling of engineering systems, and seek to acquire a set of optimization tools which can be applied to various engineering applications. The course will introduce fundamental engineering systems concepts and methods with real-world projects related to critical contemporary issues. The course includes lectures on the following topics: complex systems, network modelling, system dynamics, probability and statistics, optimization methods, infrastructure system design and behaviour and decision making.

• This course in intended for first year engineering students; it is available by application to the School of Civil and Environmental Engineering.

• The URL of the course online handbook is:• http://www.handbook.unsw.edu.au/undergraduate/courses/2014/ENGG1400.html

Page 6: ENGG1400_20140731_Lecture1

Objectives

• Learning objectives of the course are:

1. To reinforce a student’s capability in modelling and apply the concepts learned to the analysis of engineering systems.

2. To introduce students to the fundamental optimization tools and concepts applied by engineers in advanced systems modelling.

3. To abstract a complex technical system into quantitative models and/or qualitative frameworks that represent that system.

4. To analyse and optimize various engineering systems with the abstracted models.

5. Provide a foundation in modelling and optimization tools needed for their studies in the field of Engineering.

Page 7: ENGG1400_20140731_Lecture1

Teaching Strategies

The following teaching/learning strategies will be used the course.

Private Study � � �

Review lecture material and textbook Do set problems and assignments Reflect on class problems and assignments

Lectures � � � �

Find out what you must learn See methods that are not in the textbook Follow worked examples Hear announcements on course changes

Workshops � � �

Be guided by demonstrators Practice solving set problems Ask questions

Assessments (assignments) � �

Demonstrate your knowledge and skills Demonstrate higher understanding and problem solving

 

Page 8: ENGG1400_20140731_Lecture1

Expected Learning Outcomes• By successfully completing this course you will be able to:• Develop an integrative holistic approach to problem solving through systems

modelling• Ability to select optimal designs from a set of alternatives as a fundamental of

engineering problem solving• Abstract a complex technical system into quantitative models and/or qualitative

frameworks that represent that system• Use abstracted models and frameworks to evaluate and compare effective design

decisions• Implement optimization methods to improve the performance of various infr. systems• Create a strategy for implementing design decisions• Understand the fundamental concepts and principles applied by engineers in

advanced systems modelling.• Explore the interdisciplinary nature of integrated real world systems• Apply methods learned to emerging real world engineering problems• Apply learned skills to their studies.• For each hour of contact it is expected that you will put in at least 1.5 hours of

private study.

Page 9: ENGG1400_20140731_Lecture1

Assessment• Assessment is based on two assignments and a final written examination.

– Workshop Participation 5%– Assignments are worth 60% of the course mark, with 2 assignments

worth 30% each.– Final written examination is worth 35%.

• Assignments are assessed on the technical merit and consistency of the methodology followed. Attention to the detail and demonstrated initiative in experimentation with concepts learned will be rewarded. Late submissions will not be accepted.

• The written examination will be in the conventional closed book format covering all topic areas. The formal exam scripts will not be returned. Students who perform poorly in the quick quizzes and workshops are recommended to discuss progress with the lecturer during the semester. The lecturer reserves the right to adjust the final scores.

Page 10: ENGG1400_20140731_Lecture1

Assignments

• Assignment 1: Planning and Finance Due 3 September, 2 pm

• Assignment 2: Operations and Management Due 8 October, 2 pm•• Drop-off for all assignments is the wooden assignment box labeled

“Professor S. Travis Waller”, located at: School of Civil & Environmental Engineering, Building H20, level 1, opposite room 114 (Tea Room)

Page 11: ENGG1400_20140731_Lecture1

Course ProgramSEMESTER 2 2014

Week Date Topic Assessments

1 30-July Introduction to Infrastructure Systems and Modeling

2 6-August Planning: Facility Location Problem

3 13- August Planning: Network Design Problem

4 20- August Planning: Project Management*

5 27- August Finance: Asset Management*

6 3-September Construction: Scheduling Assignment 1 due

7 10- September Operations: Vehicle Routing Problem 8 17- September Operations: Joint Decision Making

9 24- September Maintenance: Management and Repair

X 1- October No class – Mid-semester break

10 8- October Operations: Simulation Assignment 2 due11 15- October Guest Lecture from Evans & Peck - Ian McIntyre 12 22- October Course Review

13 29- October No Lecture, just workshops this week

*Guest Lecturer Dr. Ken Doust

Page 12: ENGG1400_20140731_Lecture1

Course ProgramSEMESTER 2 2014

Week Date Topic Assessments

1 30-July Introduction to Infrastructure Systems and Modeling

2 6-August Planning: Facility Location Problem

3 13- August Planning: Network Design Problem

4 20- August Planning: Project Management*

5 27- August Finance: Asset Management*

6 3-September Construction: Scheduling Assignment 1 due

7 10- September Operations: Vehicle Routing Problem 8 17- September Operations: Joint Decision Making

9 24- September Maintenance: Management and Repair

X 1- October No class – Mid-semester break

10 8- October Operations: Simulation Assignment 2 due11 15- October Guest Lecture from Evans & Peck - Ian McIntyre 12 22- October Course Review

13 29- October No Lecture, just workshops this week

*Guest Lecturer Dr. Ken Doust

As this is a new course, this may be adjusted later.

Page 13: ENGG1400_20140731_Lecture1

Relevant Resources• Fourer, Robert, Gay, David M. and Brian W. Kernighan. AMPL: A Modeling

Language for Mathematical Programming, Second edition, ISBN 0-534-38809-4.• Larson, Richard C., and Amedeo R. Odoni. Urban Operations Research. Prentice

Hall, 1981. Available at: http://web.mit.edu/urban_or_book/www/book/• Penn, Michael R. and Philip J. Parker. Introduction to Infrastructure – An Introduction

to Civil and Environmental Engineering. John Wiley & Sons, Inc. 2011. ISBN : 978-0-470-41191-9

• Sussman, Joseph. Complex Sociotechnical Systems (CSS): Some Fundamental Concepts.

• Sterman, John D. Business Dynamics: Systems Thinking and Modeling for a Complex World. Irwin/McGraw-Hill, 2000. ISBN: 9780072389159.

• Martland, Carl D. Toward More Sustainable Infrastructure: Project Evaluation for Planners and Engineers. 1st ed. Wiley, 2011. ISBN: 9780470448762.

• Churchman, Charles West. "Thinking." Chapter 1 in The Systems Approach. New York, NY: Delacorte Press, 1979. ISBN: 9780385289986.

• Perrow, Charles. "Complexity, Coupling, and Catastrophe." Chapter 3 in Normal Accidents: Living with High-risk Technologies. Princeton, NJ: Princeton University Press, 1999. ISBN: 9780691004129

Page 14: ENGG1400_20140731_Lecture1

Dates to note

• Refer to MyUNSW for Important Dates available at:• https://my.unsw.edu.au/student/resources/KeyDates.html

Page 15: ENGG1400_20140731_Lecture1

Plagiarism

• Beware! An assignment that includes plagiarised material will receive a 0% Fail, and students who plagiarise may fail the course. Students who plagiarise are also liable to disciplinary action, including exclusion from enrolment.

• Plagiarism is the use of another person’s work or ideas as if they were your own. When it is necessary or desirable to use other people’s material you should adequately acknowledge whose words or ideas they are and where you found them (giving the complete reference details, including page number(s)). The Learning Centre provides further information on what constitutes Plagiarism at:

• http://www.lc.unsw.edu.au/onlib/plag.html

Page 16: ENGG1400_20140731_Lecture1

Academic Advice

• For information about:– Notes on assessments and plagiarism,– School policy on Supplementary exams,– Special Considerations,– Solutions to Problems,– Year Managers and Grievance Officer of Teaching and Learning

Committee, and CEVSOC. Refer to Academic Advice on the School website available at:

•• http://www.civeng.unsw.edu.au/info-about/our-school/policies-

procedures-guidelines/academic-advice

Page 17: ENGG1400_20140731_Lecture1

Reading• Today’s Lecture (Larson and Odoni, 1981)

– Sections 1.0, 1.1, 1.2 and 1.3

• Today’s Lecture (Penn and Parker, 2011)– Chapter 1

• Upcoming Material (Larson and Odoni, 1981):– Section 6 (Intro), 6.1, 6.2, 6.2.1– Minimum-Spanning-Tree: Section 6.3, 6.3.1– Facility Location: Section 6.5, 6.5.1 through 6.5.8

• Suggested as core background for the course:• AMPL Textbook:

– Introduction, Chapter 1, and Chapter 2

Page 18: ENGG1400_20140731_Lecture1

Course Overview• Domain knowledge about infrastructure

– Facts & figures– Standards– Organizational processes

• Technical knowledge about systems modelling and optimization– Mathematical techniques– Algorithms– Software usage

• Intentional Student Challenges:– We will move back and forth between these types of knowledge.– We will rely frequently on “word problems”. You must develop the

mathematical model.

Page 19: ENGG1400_20140731_Lecture1

Undergraduate Research Assistance

• In the past I’ve often hired a couple Undergraduate RAs.

• Application would be late in the course with any decision just after the course ends.

• Activities would include involvement in research, governmental and/or industry projects.

• Will provide more details mid-semester.– This slide is simply to give some notice to those who may be

interested and as a reminder to myself

Page 20: ENGG1400_20140731_Lecture1

Some Infrastructure Disciplines Highly Relevant for Engineering

• Energy• Water• Transport• Telecommunications

• Basically, the foundational necessities for a properly functioning society

Page 21: ENGG1400_20140731_Lecture1

The Role of Engineers

• We are not technicians

• We are problem solvers

• We combine our technical and domain knowledge, often in novel ways

• We must be rigorous

• We must adapt as needed

• Note: anything completely repetitive will (eventually) be replaced by a computer

Page 22: ENGG1400_20140731_Lecture1

The Role of EngineersFrom Penn and Parker (2011)

Page 23: ENGG1400_20140731_Lecture1

Increased Demands on Urban InfrastructurePenn and Parker (2011)

Page 24: ENGG1400_20140731_Lecture1

Infrastructure Management is not only Design and Construction Penn and Parker (2011)

Page 25: ENGG1400_20140731_Lecture1

Common Infrastructure Activities by Budget RangePenn and Parker (2011)

Page 26: ENGG1400_20140731_Lecture1

Closer to home

• Suggested side reading. Chapter 1 and Chapter 10 (Funding) of the NSW Long Term Transport Master Plan: http://www.transport.nsw.gov.au/sites/default/files/b2b/publications/nsw-transport-masterplan-final.pdf

• Billions in transport infrastructure• 2010-2011, $11.7• 2011-2012, $13.1• 2012-2013, $13.2

• Transport investment represents around 40 percent of total State infrastructure investment

Page 27: ENGG1400_20140731_Lecture1

Funding Sources (NSW Transport Master Plan)

Page 28: ENGG1400_20140731_Lecture1

State Organizational Structure for Transport Infrastructure(NSW Transport Master Plan)

Page 29: ENGG1400_20140731_Lecture1

Urban Service Costs – Larson and Odoni (1981)

Page 30: ENGG1400_20140731_Lecture1

Systems Modelling - Larson and Odoni (1981)This is just one approach to some Systems Modelling problems

Page 31: ENGG1400_20140731_Lecture1

Systems Modelling

• What is a systems model?

• Is a mathematical model ever perfect?

• What is a good mathematical model?

Page 32: ENGG1400_20140731_Lecture1

Applied Systems Modelling

• In this course, we will apply such “systems thinking” to infrastructure applications.

• To address infrastructure applications, we will categorize them into stages.

Page 33: ENGG1400_20140731_Lecture1

One View of the Stages of Infrastructure Systems Optimization

• Planning– What to build– Where to build

• Finance– Who pays

• Construction– How to build– When to build

• Operations– What to do day-to-day/month-to-month

• Maintenance– What to fix– When to replace

Page 34: ENGG1400_20140731_Lecture1

Short Motivational Example of Transport Infrastructure Planning (Braess’ Paradox)

• Should we build a bridge at a particular location?

• Many considerations– Cost – Disruption during construction– Environmental Impact– Impact on accessibility, travel time, safety, etc etc.

• This is a grossly simplified example but grounded in a real issue.

• Let us only consider the expected benefit side, specifically travel time “savings”.

Page 35: ENGG1400_20140731_Lecture1

Simplified Static Equilibrium Model Braess’s Paradox (1950’s simplified example)

A

B

C

D

101

1xc

104

4xc 73 c

72 c

X=50

• P1= A-B-D • P2 = A-C-D

2 Paths

Page 36: ENGG1400_20140731_Lecture1

Simplified Static Equilibrium Model Braess’s Paradox (1950’s simplified example)

A

B

C

D

101

1xc

104

4xc 73 c

72 c

X=50

• P1 = P2 = 25

Equilibrium flows

• P1= A-B-D • P2 = A-C-D

2 Paths

c1+c2 = c3+c4 = 9.5

Total cost = 475

Page 37: ENGG1400_20140731_Lecture1

Braess’s Paradox Example

A

B

C

D

101

1xc

104

4xc 73 c

72 c

X=50 15 c

• P1 = A-B-D • P2 = A-C-D • P3 = A-B-C-D

3 Paths

Page 38: ENGG1400_20140731_Lecture1

Braess’s Paradox Example

A

B

C

D

101

1xc

104

4xc 73 c

72 c

X=50 15 c

• P1 = A-B-D • P2 = A-C-D • P3 = A-B-C-D

3 Paths51 c

54 c

Page 39: ENGG1400_20140731_Lecture1

Braess’s Paradox Example

A

B

C

D

101

1xc

104

4xc 73 c

72 c

X=50 15 c

• P1 = A-B-D • P2 = A-C-D • P3 = A-B-C-D

3 Paths

P3 = 50, P1 = 0, P2 = 0

Equilibrium flows

C1 + C5 + C4 = 11

Total cost = 550

Page 40: ENGG1400_20140731_Lecture1

Braess’s Paradox Example

A

B

C

D

101

1xc

104

4xc 73 c

72 c

X=50 15 c

• P1 = A-B-D • P2 = A-C-D • P3 = A-B-C-D

3 Paths

P3 = 50, P1 = 0, P2 = 0

Equilibrium flows

C1 + C5 + C4 = 11

Total cost = 550

Bottom Line: We would likely be spending millionsof Dollars to build a bridge that made everyone’s travel time worse

Page 41: ENGG1400_20140731_Lecture1

One View of the Stages of Infrastructure Systems Optimization

• Planning– What to build– Where to build

• Finance– Who pays

• Construction– How to build– When to build

• Operations– What to do day-to-day/month-to-month

• Maintenance– What to fix– When to replace

We will return to infrastructure knowledge in the context of these stages.

But, before that, we will begin to address the Mathematical tools we will use in addressing these stages

Page 42: ENGG1400_20140731_Lecture1

Mathematical Modelling/Linear Programming

• Variables– The decisions we have control over.

• Objective function– A function representing profit, cost, consumption or some other value to

be maximized or minimized.

• Constraints– A set of restrictions placed on the variables.

• Non-negativity constraints– A special set of constraints stating that a variable cannot be negative.

Page 43: ENGG1400_20140731_Lecture1

Mathematical Modelling/Linear Programming

• Variables– The decisions we have control over. Example: x, y, z or x1, x2, x3

• Objective function– A function representing profit, cost, consumption or some other value to

be maximized or minimized. Example: f(x) or f(x1, x2, x3) or f(x,y,z)

• Constraints– A set of restrictions placed on the variables. – Examples x ≤10 or x2 – x3 = 5 or y + z ≥ 13

• Non-negativity constraints– A special set of constraints stating that a variable cannot be negative.

Example, x1 ≥ 0

Page 44: ENGG1400_20140731_Lecture1

• For a math model, if the objective function is linear, all constraints are linear and all variables are continuous, then the model is a Linear Program (LP)– LPs are generally good because we have general solution

methods to efficiently solve them.

• If the variables must take on integer values then the model is an Integer Program (IP) when all variables are integers or Mixed Integer Program (MIP) when some variables are integers and comes are continuous.

Mathematical Modelling/Linear Programming

Page 45: ENGG1400_20140731_Lecture1

Linear Programs (from the AMPL textbook)

• An (extremely simplified) steel company must decide how to allocate next week’s time on a rolling mill. The mill takes unfinished slabs of steel as input and can produce either of two semi-finished products, which we will call bands and coils. The mill’s two products come off the rolling line at different rates:

• Tons per hour: Bands 200 Coils 140

• They have different profitabilities: Bands $25 Coils $30

• The following weekly production amounts are the most that can be justified in light of the currently booked orders: Bands 6,000 Coils 4,000

• If we have 40 hours of production time available this week, how many tons of bands and how many tons of coils should be produced to bring in the greatest total profit?

Page 46: ENGG1400_20140731_Lecture1

Formulating the LP

• Multiple ways to begin.• We will adopt this process:

1. Identify the decision variables in words2. Explicitly restate the decision variable in mathematical notation3. Identify the constraints in words4. Explicitly restate the constraints in mathematical notation5. Identify the objective in words6. Explicitly restate the objective in mathematical notation

• Some problems may lend themselves to different orderings of these steps.

Page 47: ENGG1400_20140731_Lecture1

Linear Programs (from the AMPL textbook)• An (extremely simplified) steel company must decide how to allocate next

week’s time on a rolling mill. The mill takes unfinished slabs of steel as input and can produce either of two semi-finished products, which we will call bands and coils. The mill’s two products come off the rolling line at different rates:

• Tons per hour: Bands 200 Coils 140

• They have different profitabilities: Bands $25 Coils $30

• The following weekly production amounts are the most that can be justified in light of the currently booked orders: Bands 6,000 Coils 4,000

• If we have 40 hours of production time available this week, how many tons of bands and how many tons of coils should be produced to bring in the greatest total profit?

Page 48: ENGG1400_20140731_Lecture1

LP Example

• Decision Variables?

Page 49: ENGG1400_20140731_Lecture1

LP Example

• Decision Variables

– Tons of Bands to produce– Tons of Coils to produce

Page 50: ENGG1400_20140731_Lecture1

LP Example

• Decision Variables

– Tons of Bands to produce XB

– Tons of Coils to produce XC

Page 51: ENGG1400_20140731_Lecture1

LP Example

• Constraints?

Page 52: ENGG1400_20140731_Lecture1

LP Example

• Constraints

– Cannot produce for longer than 40 hours– Cannot make more than 6000 tons of Bands– Cannot make more than 4000 tons of Coils

Page 53: ENGG1400_20140731_Lecture1

LP Example

• Constraints

– Cannot produce for longer than 40 hours– Cannot make more than 6000 tons of Bands– Cannot make more than 4000 tons of Coils

Anything else?

Page 54: ENGG1400_20140731_Lecture1

LP Example

• Constraints

– Cannot produce for longer than 40 hours– Cannot make more than 6000 tons of Bands– Cannot make more than 4000 tons of Coils– Cannot make negative tons of Bands– Cannot make negative tons of Coils

Page 55: ENGG1400_20140731_Lecture1

LP Example

• Constraints

– Cannot produce for longer than 40 hours– Cannot make more than 6000 tons of Bands XB ≤ 6000 – Cannot make more than 4000 tons of Coils XC ≤ 4000– Cannot make negative tons of Bands XB ≥ 0– Cannot make negative tons of Coils XC ≥ 0

Page 56: ENGG1400_20140731_Lecture1

LP Example – First Constraints?

• Cannot produce for longer than 40 hours

• Tons per hour: Bands 200 Coils 140

• Each ton of Bands takes 1/200th of an hour• Each ton of Coils takes 1/140th of an hour

• So, the constraints is• (1/200) XB + (1/140) XC ≤ 40

Page 57: ENGG1400_20140731_Lecture1

LP Example

• Constraints

– Cannot produce for longer than 40 hours– (1/200) XB + (1/140) XC ≤ 40– Cannot make more than 6000 tons of Bands XB ≤ 6000 – Cannot make more than 4000 tons of Coils XC ≤ 4000– Cannot make negative tons of Bands XB ≥ 0– Cannot make negative tons of Coils XC ≥ 0

Page 58: ENGG1400_20140731_Lecture1

LP Example

• Objective?

Page 59: ENGG1400_20140731_Lecture1

LP Example

• Objective– Maximize Profit

Page 60: ENGG1400_20140731_Lecture1

LP Example

• Objective– Maximize Profit 25 XB + 30 XC

Page 61: ENGG1400_20140731_Lecture1

Overall LP

Maximize 25 XB + 30 XC

Subject to(1/200) XB + (1/140) XC ≤ 400 ≤ XB ≤ 6000 0 ≤ XC ≤ 4000

Page 62: ENGG1400_20140731_Lecture1

Overall LP

Maximize 25 XB + 30 XC

Subject to(1/200) XB + (1/140) XC ≤ 400 ≤ XB ≤ 6000 0 ≤ XC ≤ 4000

This would be the “answer” to the question posed on the earlier slide.However, this alone would not necessarily warrant full credit. The development of theanswer is also important. Specify the variables, constraints, and objective in your ownwords first. Then the mathematics.

Page 63: ENGG1400_20140731_Lecture1

Coded for AMPL (saved as prod0.mod)

var XB;var XC;maximize Profit: 25 * XB + 30 * XC;subject to Time: (1/200) * XB + (1/140) * XC <= 40;subject to B_limit: 0 <= XB <= 6000;subject to C_limit: 0 <= XC <= 4000;

Page 64: ENGG1400_20140731_Lecture1

Coded for AMPL (saved as prod0.mod)var XB;var XC;maximize Profit: 25 * XB + 30 * XC;subject to Time: (1/200) * XB + (1/140) * XC <= 40;subject to B_limit: 0 <= XB <= 6000;subject to C_limit: 0 <= XC <= 4000;

To find the solution:ampl: model prod0.mod;ampl: solve;

ampl: display XB, XC;

Page 65: ENGG1400_20140731_Lecture1

Reminders• Please read course profile closely. You are responsible for knowing it.

• Other reading:• Today’s Lecture (Larson and Odoni, 1981)

– Sections 1.0, 1.1, 1.2 and 1.3

• Today’s Lecture (Penn and Parker, 2011)– Chapter 1

• Upcoming Material (Larson and Odoni, 1981):– Section 6 (Intro), 6.1, 6.2, 6.2.1– Minimum-Spanning-Tree: Section 6.3, 6.3.1– Facility Location: Section 6.5, 6.5.1 through 6.5.8

• Suggested as core background for the course:• AMPL Textbook:

– Introduction, Chapter 1, and Chapter 2