编辑推荐
本书可以作为IT从业者关于Julia语言、科学计算、数学建模、机器学习、运筹学的参考书。
内容简介
Julia像C一样快,像MATLAB一样方便,并且像Python一样通用。在Julia开发者,特别是JuMP包开发者的大力支持下,Julia为运筹学及相关领域的高性能科学计算提供了一个强大的工具——JuMP。
本书对Julia语法基础及其标准库、编程技巧、数值优化、优化求解、计算机科学计算都有所涉及,它可以作为计算机科学计算的入门图书使用;本书作者是美国南佛罗里达大学副教授ChanghyunKwon,他为了方便学生的研究、学习写下本书,所以这本书也可以作为高校研究生和教师的有用的参考书。
作者简介
作者权昌贤(Changhyun Kwon),是南佛罗里达大学工业与管理系统工程副教授。他的研究兴趣包括运输系统分析和服务运营问题。他的研究得到了包括 科学基金会、美国运输部和加拿大大使馆在内的各种组织的支持。在加入南佛罗里达大学之前,他曾在布法罗大学任教,并于2015年获得UB杰出学者:青年研究者奖。
章节目录
版权信息
内容简介
推荐序1
推荐序2
前言
第1章 介绍和安装
1.1 什么是Julia及为什么要使用Julia
1.2 安装Julia
1.2.1 在Windows系统上安装Julia
1.2.2 在macOS系统上安装Julia
1.2.3 运行Julia脚本
1.2.4 安装Gurobi
1.2.5 安装CPLEX
1.3 安装IJulia
1.4 包管理
1.5 帮助
第2章 简单线性规划
2.1 线性规划问题
2.2 写线性规划问题的其他方式
2.3 写线性规划问题的另一种方式
2.4 混合整数线性规划问题
第3章 Julia语言基础
3.1 向量、矩阵和数组
3.2 元组
3.3 索引和范围
3.4 打印信息
3.5 集合、字典和循环
3.6 函数
3.7 变量的作用域
3.8 随机数生成
3.9 文件读/写
3.10 绘图
3.10.1 PyPlot包
3.10.2 在PyPlot中避免使用第三方字体
第4章 数值方法选讲
4.1 曲线拟合
4.2 数值微分
4.3 数值积分
4.4 自动微分
第5章 单纯形法
5.1 单纯形法简介
5.2 查询所有基本可行解
5.3 使用JuMP包
5.4 表格式的枢轴旋转
5.5 单纯形法的实现
5.5.1 initialize(c,A,b)
5.5.2 is_optimal(tableau)
5.5.3 pivoting!(tableau)
5.5.4 创建模型
5.6 后面的步骤
第6章 网络优化问题
6.1 最小费用网络流问题
6.2 运输问题
6.3 最短路径问题
6.4 实现Dijkstra算法
第7章 内点法
7.1 仿射尺度算法
7.2 原路径跟踪算法
7.3 评述
第8章 非线性优化问题
8.1 无约束优化
8.1.1 线性搜索
8.1.2 无约束优化
8.1.3 盒约束优化
8.2 非线性优化
8.3 其他求解器
8.4 混合整数非线性规划
第9章 蒙特卡洛方法
9.1 概率分布
9.2 随机线性规划
9.3 估算简单路径的数目
第10章 拉格朗日松弛
10.1 拉格朗日松弛介绍
10.1.1 下界与上界
10.1.2 次梯度优化
10.1.3 总结
10.2 p-中位问题
10.2.1 读取数据文件
10.2.2 最优化求解p-中位问题
10.2.3 拉格朗日松弛应用
10.2.4 求解下界
10.2.5 求解上界
10.2.6 更新拉格朗日乘子
第11章 互补问题
11.1 线性互补问题(LCP)
11.2 非线性互补问题(NCP)
11.3 混合互补问题(MCP)
第12章 最优化求解器中的参数
12.1 设置CPU时间限制
12.2 设置最优化间隙公差
12.3 热启动
12.4 Big-M与完整性公差
12.5 关掉求解器的输出
12.6 其他求解器参数
Julia高性能科学计算(第2版)是2020年由电子工业出版社出版,作者。
得书感谢您对《Julia高性能科学计算(第2版)》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。