ODes aCSESS Project Blog

Project progress report - week 10

This week has been devoted to the following activities:

  • Osmose setup for Tanker optimization
  • "Engineering Optimization" reading
  • Course in Model Predictive Control
  • ECOS 2015 paper extension
  • Attending seminar on Horizon 2020 - Funding Opportunities in the Energy Domain

 

Osmose setup for Tanker optimization

The "improvement" of Osmose was concluded with the following:

  • Addition of the y=ax+b constraint for resource flows
  • Creation of a function for the linearization of cost functions

This week's work focused on setting up the models for being used in the optimization of the retrofit of a chemical tanker. In particular, the following was achieved:

  • Fixing the problem of the exhaust gas: in Osmose, all heat flows are either cold flows that need to be heated, or hot flows that need to be cooled. There is no real place for "waste" flows, such as the exhaut gas, that can be cooled and used to recover heat, but don't really need to: there is no problem if the exhaust gas leave the funnel at a temperature that is higher than the minimum allowed. 
    This problem was fixed by adding a new cluster in the simulation, called "Main engine chimney", where the heat from the exhaust gas can go either to a steam boiler, or to the environment.
  • Setting up the internal Multi-Objective optimisation routine MOO, programmed in Matlab. Now it is up and running, ready to be used. 

 

"Engineering optimization" reading

I continue reading the book "Engineering Optmization", written by S.S. Rao. 

During the second week of book reading, I read chapter 10 and read chapter 1:

  • Chapter 10: Integer programming
  • Chapter 11: Stochastic programming

 

Model predictive control course 

There was a "bug" in the course programme, so Thursday supposedly 4th lecture was actually the 3rd lecture. It dealt with the concept of constrained systems. This included learning about invariant and control invariant sets and on how to calculate a control-invariant set for a specific system, or calculate a control law that makes a set to be control-invariant.

 

ECOS 2015 paper extension

Work continued on the extension of ECOS 2015 paper. In particular, I started the conversion of the database analysis code from Matlab to Python. This week's work included the conversion of the "constants" routines, that define the constants used in the analysis. 

 

Attending seminar on Horizon 2020 - Funding Opportunities in the Energy Domain

On Friday the 24th of March I attended a seminar at the EPFL campus in Lausanne about funding opportunities in H2020 and in Switzerland in the energy domain. There were many interesting presentations, although apparently in the current Work Programme (2017-2018) the opportunities for funding in my domain are few. 

I will upload the presentations as soon as they become available.

Here the link to the event:

https://www.euresearch.ch/en/events/event-detail/showUid/600/

Posted by Francesco Baldi at 20:40
Comments (0)
Project progress report - week 9

This week has been devoted to the following activities:

  • Osmose development
  • "Engineering Optimization" reading
  • Course in Model Predictive Control
  • ECOS 2015 paper extension

 

Osmose develpment

The possibility of including dependancy of resource flows in Osmose from y = ax to y = ax + b is finally up and running.

Hereafter a description of the module and of what it does: 

https://drive.google.com/open?id=0B_ThFgKtdzRramF0ZTYxRlVDTHM

 

"Engineering optimization" reading

I continue reading the book "Engineering Optmization", written by S.S. Rao. 

During the second week of book reading, I finished reading chapter 8 and read chapter 9:

  • Chapter 8: Geometric programming
  • Chapter 9: Dynamic programming

 

Model predictive control course 

The third week's lecture dealt with the concept of constrained systems. This included learning about invariant and control invariant sets and on how to calculate a control-invariant set for a specific system, or calculate a control law that makes a set to be control-invariant.

 

ECOS 2015 paper extension

During my PhD, I did work on the energy and exergy analysis of Cruise ship energy systems, together with Fredrik Ahlgren (Linneus University) and Tuong-Van Nguyen (DTU). The paper was presented at the International conference of Efficiency, Cost, Optimisation, Simulation and Environmental Impact of Energy Systems (ECOS) in 2015 in Pau, France.

We had already planned and initiated work for extending the publication to a journal publication, but this did not happen because of lack of time and organization. Now, we are back on the project. The plan is to have it done by the beginning of the summer.

This week's activities connected to this project involved:

  • Meeting on Skype with Fredrik and TV
  • Planning the first month of action
  • Selecting a number of publications that are expected to be cited
  • Creating a github project page to manage our project code files. 
Posted by Francesco Baldi at 11:30
Comments (0)
Project progress report - week 8

This week has been devoted to the following activities:

  • Osmose development
  • "Engineering Optimization" reading
  • Course in Model Predictive Control

 

Osmose develpment

The concept of developing the dependancy of resource flows in Osmose from y = ax to y = ax + b was still the main subject of the activity

The focus on this week's activity has been on how to make this work by only adding the necessary constraints, instead of adding redundant constraints for every simulation step.

 

"Engineering optimization" reading

As from the plan outlined in the first post and in the planning of the project, after I finished the EDx course about linear optimization I started reading the book "Engineering Optmization", written by S.S. Rao. 

During the second week of book reading, I read chapter 7 and part of chapter 8:

  • Chapter 7: Nonlinear programming III: Constrained optimization techniques
  • Chapter 8: Geometric programming

 

Model predictive control course 

The third week's lecture dealt with the concept of convex optimization, which MPC is based on. This primarily included the revision of interior point methods for the optimization of linear and nonlinear programming problems. 

 

Posted by Francesco Baldi at 8:52
Comments (0)
Project progress report - week 7

Week 7 has been devoted to the following activities:

  • Osmose development
  • "Engineering Optimization" reading
  • Course in Model Predictive Control
  • Introduction to IPESE for Alessandra

 

Osmose develpment

The idea is to be able to implement in Osmose relationships between different flows that are still linear, but of the type

  • y = ax + b

instead of

  • y = ax

This was implemented for resource flows (i.e., in particular, fuel flows) and will be extended to mass flows and heat flows.

 

"Engineering optimization" reading

As from the plan outlined in the first post and in the planning of the project, after I finished the EDx course about linear optimization I started reading the book "Engineering Optmization", written by S.S. Rao. 

During the second week of book reading, I read chapters 5 and 6:

  • Nonlinear programming I: One dimensional minimization problems
  • Nonlinear programming II: Unconstrained optimization techniques

 

Model predictive control course 

The second week's lecture dealt with linear quadratic regulators (LQR) in discrete-time systems, and on the two main ways of solving them:

  • Dynamic programming
  • Least squares

We also explored the concept of stability of LQRs, and on how this heavily depends on the selected horizon for the prediction

 

Introduction to IPESE for Alessandra

Alessandra Ancona is a PhD student from the University of Bologna. She is doing her PhD on the optimization of district heating systems. 

She was introduced to the lab, and she started learning her way through Osmose. 

Posted by Francesco Baldi at 17:06
Comments (0)
Project progress report - week 6

Week 6 has been devoted to the following activities:

  • Osmose model development
  • Osmose development
  • "Engineering Optimization" reading
  • Course in Model Predictive Control

Osmose model development

I am continuing the step-by-step development plan for implementing one of the existing ship case study (the chemical tanker) into Osmose. 

This week's development have been:

  • Implementation of the Osmose model inside of an external, genetic algorithm. For now I used Matlab's GA, later I might implement the multiobjective optimization tool (MOO) available at IPESE. For the moment, I just tested the optimization of the temperature of the steam network. More tests to come.

 

Osmose develpment

The idea is to be able to implement in Osmose relationships between different flows that are still linear, but of the type

  • y = ax + b

instead of

  • y = ax

This requires a deeper understanding of how Osmose works, which is what I started to do during this week. I explored more in depth the way Osmose takes the inputs from the user and uses them to write AMPL code. 

 

"Engineering optimization" reading

As from the plan outlined in the first post and in the planning of the project, after I finished the EDx course about linear optimization I started reading the book "Engineering Optmization", written by S.S. Rao. 

The book covers most aspects of mathematical programming, touching both linear, integer, quadratic, geometrical and generic nonlinear programming, as well as introducing to alternative programming techniques (Genetic Algorithms, etc). 

During the first week, I read 4 out of the 14 chapters of the book:

  • Introduction to optimization
  • Classic optimization techniques
  • Linear programming I: The Simplex method
  • Linear programming II: Additional topics and extensions

 

Model predictive control course

I started attending a Model Predictive Control course (MPC), offered at EPFL by Colin Neil Jones. 

http://edu.epfl.ch/coursebook/fr/model-predictive-control-ME-425

The course will develop over 14 weeks, and cover a broad range of thematics related to MPC, including its theoretica foundations and its practical implementation. 

The first week's lecture introduced MPC and its applications, and gave some background information about the concepts of stability in control

Posted by Francesco Baldi at 16:44
Comments (0)
Project progress report - week 5

Week 4 has been devoted to the following activities:

  • Osmose model development
  • Linear programming course
  • Methane evaporation project
  • Applying for funding for the project-end conference
  • Literature review

 

Osmose model development

I am continuing the step-by-step development plan for implementing one of the existing ship case study (the chemical tanker) into Osmose. 

This week's development have been:

  • Implementation of all auxiliary heat and power demands with realistic figures: in particular, tank heating, tank cleaning, fuel tank heating, ballast pumps, cargo pumps, air conditioning.
  • Implementation of a reference trip with the following parts:
    • Port stay
    • Cargo loading
    • Loaded voyage
    • Cargo unloading
    • Port Stay
    • Ballast voyage-1 (with ballast pumps and tank cleaning on)
    • Ballast voyage-2 (w/o ballast pumps and tank cleaning)

 

Linear programming course

See previous weeks' blog post. I happily concluded the course, which means that I can move to the following step of educating myself about optimisation.

 

Methane evaporation project

I am helping Francesca, a new PhD student in the IPESE lab, in implementing a methane-evaporation unit into a larger energy system (e.g. ship, or a harbour). The process involves fighting with Vali (we are both beginners) and its integration with Osmose.

 

Applying for funding for the project-end conference

In the project application, I had "promised" I would end the project with a seminar focused on spreading the results for the project. 

Why not making it into a small conference instead?

The "Latsis foundation" offers 50 000 CHF every year to finance an event on campus. I spent some time this week to prepare an application to be sent for this call (deadline: 01 March).

To make it short, I propose to organize a conference about "Modelling and optimization of Ship Energy Systems", hopefully gathering researchers and R&D from the industry here in Sion. A bit ambitious, but in the end...why not?

In this framework, I would present the results of the ODes aCCSES project in one of the keynote speeches. The conference is planned as a 3-day conference. It would be interesting to have help from Kari based on his experience organizing the SET Seminar in Aalto

 

Literature review

I keepreading work of other researchers from EPFL in my area of interest. This week's reading included:

  • Marechal, F., & Kalitventzeff, B. (2003). Targeting the integration of multi-period utility systems for site scale process integration. Applied thermal engineering23(14), 1763-1784.
Posted by Francesco Baldi at 11:29
Comments (0)
Project progress report - week 4

Week 4 has been devoted to the following activities:

  • Osmose model development
  • Linear programming course
  • Initiation to Vali
  • Literature review

 

Osmose model development

I made a step-by-step development plan for implementing one of the existing ship case study (the chemical tanker) into Osmose. The idea is to develop piece by piece the models I need in my project, while improving my skills with Osmose and learn its multiple functionalities.

This week's development have been:

  • Implementation of multi-time simulation: this allows simulating different periods. At the present moment, the values were randomly selected and only for a few parameters, but it works. For the future, the idea is to simulate some kind of "reference trip", with port stay, maneuvering, loaded conditions, ballast conditions, with appropriate values and durations
  • Implementation of the heat demand: This involved adding models for the heating of the fuel tanks, of the storage tanks (it can happen), and of the fresh water generator. 

 

Linear programming course

See previous week's blog post. The course is developing. I expect to be ready in one or two weeks

 

Initiation to Vali

Vali is a flowsheeting program, similar to Aspen or others. 

The idea is to simulate a regasification plant, and to integrate it in a wider energy system. This will also be an "excuse" to learn how to use Vali, a very powerful tool for both process simulation and data reconciliation

 

Literature review

I have started reading work of other researchers from EPFL in my area of interest, to get an idea of what is done and can be done with the tools available here. This included:

  • Mian, A., Martelli, E., & Maréchal, F. (2016). Framework for the multiperiod sequential synthesis of heat exchanger networks with selection, design, and scheduling of multiple utilities. Industrial & Engineering Chemistry Research55(1), 168-186.
  • Menon, R. P., Paolone, M., & Maréchal, F. (2013). Study of optimal design of polygeneration systems in optimal control strategies. Energy55, 134-141.
  • Moret, S., Bierlaire, M., & Maréchal, F. (2016). Robust optimization for strategic energy planning. Informatica27(3), 625-648.
  • Collazos, A., Maréchal, F., & Gähler, C. (2009). Predictive optimal management method for the control of polygeneration systems. Computers & Chemical Engineering33(10), 1584-1592.

 

 

Posted by Francesco Baldi at 16:54
Comments (0)
Project progress report - week 1-3

This is the first project process report of the ODes aCSESS blog. 

The project started on the 16th of January 2017. Hence, this process report will conver the first three weeks of the project. The coming report, that will (hopefully) be published every Friday afternoon, will cover one week of project progress each.

The first three weeks of the project have been devoted to:

  • Learn the use and principles of Osmose
  • Further develop my knowledge about optimisation (and, in particular, about linear programming)
  • Some initial project planning

These, of course, in addition to the routine actions of starting an activity in a new environment (fix the computer, get to know people, get back in contact with previous colleagues and partners, etc.)

 

Learn the use and principle of Osmose

This activity mostly consisted of doing the Osmose tutorial as developped internally at IPESE (Note: IPESE is the Lab headed by François, it stands for Industrial Processes and Energy Systems Engineering). This allowed getting a first overview of the potential of the program, and of how it can be used. This process is still ongoing: several functions are still to be explored, in particular those developed by individual PhD students/postdocs at IPESE and not yet implemented in the "Main" version of Osmose.

In addition, this process involved going more deeply inside the structure of Osmose: following the code through its Lua scripts and understanding the process of going from the data input from the user down to the input files for the optimisation solver. This operation, still ongoing as well, is required for being able, when needed, to modify the required parts of the code in order to implement further functions at will.

 

Further develop my knowledge about optimisation

This project will deal a lot with optimization, a subject I am only little educated about. In particular, Osmose and most of the activities at IPESE are based on a large use of MILPs (Mixed Integer Linear Programming). For this reason, I started learning more about these type of optimisation and on how to handle it properly. 

This process of learning about optimisation is planned to last for more weeks to come, both taking a course about linear programming on EDx (MITx: 15.053x Optimization Methods in Business Analytics), and reading related literature. 

 

Some initial project planning

Since I am the project manager and only real resource of this project, I tried to apply my little knowledge in project management in order to get a better planning. Being all in the very beginning, the knowledge of what will happen is quite limited, but it can still be a good thing to try to plan ahead a bit. 

The planning can be found at these links, that include the task analysis of the three phases of the project, and its implementation in a Gantt chart (see the PDF automatically generated using the program GanttProject)

https://drive.google.com/a/epfl.ch/file/d/0B_ThFgKtdzRrM3RtUDRtVlJkR1U/view?usp=sharing
https://drive.google.com/a/epfl.ch/file/d/0B_ThFgKtdzRrbjBGN3ZlZ2cyeE0/view?usp=sharing
https://drive.google.com/a/epfl.ch/file/d/0B_ThFgKtdzRrY2wySENxc19YQ2M/view?usp=sharing
https://drive.google.com/a/epfl.ch/file/d/0B_ThFgKtdzRrdEtOSmxIcEpvUG8/view?usp=sharing

 

 

Posted by Francesco Baldi at 19:45
Comments (0)
RSS