最近,我开始涉足数学优化,并且对此非常喜欢。似乎很多优化问题可以通过线性程序轻松表达和解决(例如,网络流量,边缘/顶点覆盖,旅行推销员等),我知道其中一些是NP难点的,但关键是它们可以如果未得到最佳解决,则“框架化为线性程序”。
那让我开始思考:在整个学校/学院中,我们一直都被教导线性方程组,线性代数系统。看到LP表达各种算法的强大功能,这真是令人着迷。
问题:尽管我们周围普遍存在非线性系统,但是线性系统对计算机科学为何如此重要?我确实知道,它们有助于简化理解,并且在大多数情况下在计算上易于处理,是吗?这个“近似值”有多好?我们过度简化了吗,结果在实践中仍然有意义吗?还是仅仅是“自然”,即最令人着迷的问题确实只是线性的?
确保“线性代数/方程/编程”是CS的基石是否安全?如果不是,那么有什么矛盾呢?我们多久处理一次非线性问题(我在理论上不一定是指,但从“可解决性”的角度来看也是如此,即仅说它是NP并不能解决问题;应该很好地近似解决这个问题并将其降落)线性吗?)