TwoLe planning engine - Summary
This group is not part of the GNU Project.
The following article provides a preprint (provisional and quite reduced) version of a handy, short introduction to TwoLe Planning Engine (TPE, also shortened as twole-plan in several mirror repositories). The content can also be intended as a more general position paper on the importance for complex environmental applications of computational science to be growingly based on scientific free software, free data and generally on the emerging paradigm of reproducible research.
Aside from the minimal bibliography provided within the article, please have a look to the updated list of authors who worked hard in order for TwoLe Planning Engine to become an useful piece of free scientific software.
TwoLe Planning Engine: Supporting Reproducible Research in Integrated Water Resource Management
Daniele de Rigo
Abstract TwoLe Planning Engine is GNU-GPLv3+ covered free software for supporting Integrated Water Resources Management (IWRM). It provides advanced optimization (based on stochastic dynamic programming) and simulation engines suitable to allow water management policies for multi-criteria water planning to be explored within Decision Support Systems.
The provided optimization and simulation algorithms enable designing and evaluating water management policies even for multipurpose reservoir networks under different scenarios and goals.
Such kind of mathematical support may be of great importance for enabling the actors (stakeholders, decision-makers, domain experts) who are involved in the IWRM problem to move from the complexity of the IWRM modelling to the complexity of the decision problem, relying on automatic tools to explore different scenarios and goals while focusing on the effects of different water management policies.
On the other hand, publicly available software for supporting decision-making within the broad context of integrated natural resources modelling and management (IWRM is part of this context) can be viewed as a transparency prerequisite to provide involved actors with the ability to understand the implications of the technical apparatus on decision-making and to mitigate unwanted technology-driven biases [de Rigo, 2012].
The transparency requirements can be articulated in the very basic demand to be able to freely run the software and to study its complete and non-vague formulation (which needs the public availability of the source code) and in the possibility to correct and improve the software and release improvements to the public. Even if such possibility is usually exploitable only by competent researchers, its importance is vital to raise IWRM actors' awareness about the intrinsic fallibility of technical apparatuses and to ensure them the maximum degree of dependability in relying on such software, which is achievable allowing and promoting the maximum degree of public verifiability. These requirements are satisfied only by free software, because the definition of free software is equivalent to them.
Supporting Actors Involved in Water Resources Management
TwoLe Planning Engine is GNU-GPLv3+ covered free software [Stallman, 2009] for supporting Integrated Water Resources Management (IWRM). It provides advanced optimization (stochastic dynamic programming) and simulation engines suitable to allow water management policies for multi-criteria water planning to be explored within Decision Support Systems (DSS).
The provided optimization and simulation algorithms enable designing and evaluating water management policies even for multipurpose reservoir networks under different scenarios and goals.
Such kind of mathematical support may be of great importance for enabling the actors (stakeholders, decision-makers, domain experts) who are involved in the IWRM problem to move from the complexity of the IWRM modelling to the complexity of an inherently multidimensional [Gilbert, 2010; Vörösmarty et al., 2010] decision problem [Hanjra and Qureshi, 2010], relying on automatic tools to explore different scenarios and goals while focusing on the effects of different water management policies.
On the other hand, publicly available software for supporting decision-making within the broad context of integrated natural resources modelling and management (IWRM is part of this context) can be viewed as a transparency prerequisite to provide involved actors with the ability to understand the implications of the technical apparatus on decision-making and to mitigate unwanted technology-driven biases [de Rigo, 2012].
The transparency requirements can be articulated in the very basic demand to be able to freely run the software and to study its complete and non-vague formulation (which needs the public availability of the source code [Ince et al. 2012; Stodden, 2011]) and in the possibility to correct and improve the software and release improvements to the public. Even if such possibility is usually exploitable only by competent researchers, its importance is vital to raise IWRM actors awareness about the intrinsic fallibility of technical apparatuses and to ensure them the maximum degree of dependability in relying on such software. This is achievable allowing and promoting the maximum degree of public verifiability [Morin et al. 2012; Peng, 2011; Boulanger, 2005; Crowston et al. 2004]. These requirements are satisfied only by free software, because the definition of free software is equivalent to them.
Moreover, free software also allows persistent, complete and independent accessibility, investigation and free evolution of the implemented and understandably documented scientific knowledge even after the original team of developers discontinues the development and maintenance of the project. While non-free software may in some case (depending on the freedom and transparency of architectural design of modularization, interfaces and third party expandability) partially approximate this result, it inherently cannot provide the same guarantees [Yale Law School Roundtable on Data and Code Sharing, 2010; Morin et al. 2012] including that of completely and persistently allowing review inspection, correction, and free adaptation for new unforeseen scientific uses [Kelly and Sanders, 2008].
However, software freedom is not enough for this persistency of implemented knowledge to be achieved. If code-obfuscation techniques or just obscurity due to confuse design and the lack of semantic and logical organization affect the code, free availability of source code still would remain a precondition but would not suffice. Therefore, free scientific code should also try to offer to the scientific community the same accurate attention which is usually paid for other more classical scientific publications – for intentional obfuscation [Benthall, 2012] in science (especially when applied to support critical and participatory decision-making precesses) could also raise serious questions concerning scientific integrity [Tuma, 2011].
Supporting Analysts and Researchers
Many different approaches have been explored in developing DSS for IWRM. A common problem is the practical reliability of theoretically seducing algorithms which may lack an extensive experimentation in non-trivial nor standard abstract benchmark problems.
It would be quite surprising if a promising algorithm could be transposed from the purely theoretical exposition on paper to the application domain -- to solve a complex real world problem -- without a large set of boundary aspects having a strong influence on the nature of that "naive" algorithm: "research carried out using software cannot be checked or evaluated properly by other scientists unless they can read the source code that was used" [Stallman 2005].
Real world problems usually are able to highlight theoretical biases which are an obvious consequence of the fact that we can think and communicate technical ideas only by supporting mathematical notation with the ambiguity of the natural language (along with unexpressed mental biases). Such kind of logical inconsistencies can particularly affect the formalization process of complex and ill-defined problems -- which typically occur in IWRM -- and can emerge whenever algorithms transit from the typical theoretical semi-formal description to a complete mathematical implementation (which is only achievable using a programming language). If the complete mathematical description is not publicly available, theoretical results cannot be verified and above all they may become difficult to be corrected and improved. Publicly available IWRM-oriented software offers this opportunity both to the IWRM-problem actors and to the scientific community.
Despite this software has been tested in real world challenging problems and the algorithms it provides have been extensively changed to fit the logical constraints implicit in their originally imprecise definition, the only way to ensure the possibility to correct and improve algorithms is to expose the complete mathematical implementation (meaning a source code understandable and suitable to support scientific reasoning). Awareness is growing [Peng, 2011; Nature ed. board, 2011] on the relevance as research product of free scientific software in a scientific domain where claims on algorithms - without having access to the original code - would rely on several person-years of domain experts to be replicated.
Aside from this and more generally, the growing availability of free scientific software of acceptable quality may also help to mitigate a variety of scientific computing errors which originate from a cultural gap that Wilson [2006] defined "computational illiteracy". This illiteracy also induces a negative feedback in limiting the possibility of competent review by inspection of scientific software, since "to be effective, inspections need to be carried out by people who have the knowledge to understand the code they are inspecting. For scientific software, that knowledge includes knowledge of the scientific domain. This limits the availability of effective inspectors" [Kelly and Sanders, 2008] and therefore diffuse computational illiteracy within environmental computational scientists should be regarded as a major concern.
A Software-driven Evolution in IWRM DSS
TwoLe Planning Engine is a deeply revised evolution based on previous prototypes which were designed [5] and only partially implemented to study a two-level (hence the name) approach to the water resources planning (level 1) and management (level 2).
Since the original idea dates back to 1990 [5], from early prototypes up to the currently investigated evolution the programming paradigms, notations and the notion of what has become achievable and therefore thinkable have changed significantly, constraining and driving the theoretical awareness. Novel approaches [1],[2],[3],[4] have been explored and are presently under investigation to get a satisfactory form overcoming unavoidable a-priori conceptual biases (some of them raising wide attention [Milly, 2008]) thanks to the experience accumulated so far.
TwoLe Planning Engine is the entirely re-designed and rapidly evolving result of the authors' effort to merge, prune, harmonize and lead to an acceptable level of abstraction and scalability the whole bunch of software branches and fragile quick-and-dirty research prototypes which have been accumulated over decades. As a consequence, TwoLe Planning Engine is now a relevant opportunity for exploring new scientific ideas while experimenting their complex implications within a software-driven approach (all modifications are subject to a careful algorithmic and coding review process). If your research team is interested in participating in such research program, please feel free to contact(*) the authors.
Minimal bibliography
- Castelletti, A., de Rigo, D., Soncini-Sessa, R., Tepsich, L., Weber, E., (2008). "On-line design of water reservoir policies based on inflow prediction", Proceedings of 17th IFAC World Congress, Seoul, Korea, pp. 14540-14545. DOI: 10.3182/20080706-5-KR-1001.02463.
- de Rigo, D., Castelletti, A., Rizzoli, A.E., Soncini-Sessa, R., Weber E., (2005). "A selective improvement technique for fastening Neuro-Dynamic Programming in Water Resources Network Management". Proceedings of the 16th IFAC World Congress, Prague, Czech Republic, pp. 7-12. DOI: 10.3182/20050703-6-CZ-1902.02172.
- Weber E., Rizzoli, A.E., Soncini-Sessa, R., Castelletti, A., (2002). "Lexicographic optimisation for water resources planning: the case of Lake Verbano, Italy", Integrated Assessment and Decision Support– Proceedings of the First Biennial Meeting of the the International Environmental Modelling and Software Society, Lugano, Switzerland, pp. 235-240.
- de Rigo, D., Rizzoli, A.E., Soncini-Sessa, R., Weber E., Zenesi, P., (2001). "Neuro-Dynamic Programming for the efficient management of reservoir networks" [*], Proceedings International Congress on Modelling and Simulation (MODSIM), 10–13 December, Australian National University, Canberra, Australia, pp. 1949-1954. ISBN: 0-867405252.
- Soncini-Sessa, R., Villa, L., Weber, E., Rizzoli, A. E. (1999). "TwoLe: a Software Tool for Planning and Management of Water Reservoir Networks", Hydrological Sciences Journal, 44, 4, 619-631.
- Soncini-Sessa, R., Nardini, A., Gandolfi, C., Kraszewski, A. (1990). "Computer aided water reservoir management: a prototype two level DSS". In: NATO ARW on Computer Aided Support Systems in Water Resources Research and Management (Ericeira, Portugal, 23-28 September 1990)[¹][²].
Copyright (C) 2009, 2010, 2011, 2012 Daniele de Rigo
Verbatim copying and distribution of this entire article (including web links) is permitted in any medium without royalty provided this notice is preserved.
Support and bugs
Please report any problem or presumed bug starting a new support request(*).
Note
(*) Problem reports and applications for possible research collaboration can be performed by registered users of Savannah.
Registration Date: Tue 12 May 2009 05:18:45 PM UTC
License: GNU General Public License v3 or later
Development Status: 2 - Pre-Alpha
- Browse open items
Submit a new item
- Browse open items
Submit a new item
- Browse open items
Submit a new item
Powered by Savane 3.14-d582.
Corresponding source code