
<script type="text/javascript">
<!--
document.write('<div id="oa_widget"></div>');
document.write('<script type="text/javascript" src="https://www.openaire.eu/index.php?option=com_openaire&view=widget&format=raw&projectId=undefined&type=result"></script>');
-->
</script>
PATH is a nonsmooth Newton method for solving nonlinear complementarity problems, which have many applications in economics and engineering. This general-purpose code is capable of solving problem instances generated by non-expert users within algebraic modeling languages, such as AMPL and GAMS. To improve reliability on difficult problems, many algorithmic enhancements have been incorporated into the code. One key enhancement is the preprocessor that automatically applies a series of reductions to a given problem to produce a more compact problem that is usually easier to solve. The preprocessor implementation, however, is complex and accounts for roughly 25\% of the entire PATH code. The software design process for the PATH preprocessor is described in this report, which starts from a mathematical analysis that identifies the reductions that can be applied to generic problems, the reductions then dictate the requirements for data structures and algorithms, and an extensible implementation follows. A discussion of the limitations in the reductions that can be easily implemented and the difficulty of designing a comprehensive testing plan due to the software design choices is provided. While the implementation of the PATH preprocessor satisfies the requirements and is functional, greater emphasis on extensibility, testability, and maintainbility during the software design might have helped to lessen these limitations.
citations This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically). | 0 | |
popularity This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network. | Average | |
influence This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically). | Average | |
impulse This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network. | Average |
views | 9 | |
downloads | 12 |