2019-06-13 15:36:14 +02:00
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
< html xmlns = "http://www.w3.org/1999/xhtml" >
< head >
< title > OR-Tools< / title >
< meta http-equiv = "Content-Type" content = "text/html;" / >
< meta charset = "utf-8" / >
<!-- <link rel='stylesheet' type='text/css' href="https://fonts.googleapis.com/css?family=Ubuntu:400,700,400italic"/> -->
2019-06-20 23:08:48 +02:00
< link rel = "stylesheet" type = "text/css" href = "ortools.css" title = "default" media = "screen,print" / >
2019-06-13 15:36:14 +02:00
< script type = "text/javascript" src = "jquery.js" > < / script >
< script type = "text/javascript" src = "dynsections.js" > < / script >
< / head >
< body >
< div id = "banner-container" >
< div id = "banner" >
2019-06-29 18:18:08 +02:00
< span id = "sfml" > OR-Tools 7.2< / span >
2019-06-13 15:36:14 +02:00
< / div >
< / div >
2019-06-29 18:18:08 +02:00
< link rel = "icon" href = "https://developers.google.com/optimization/images/orLogo.png" >
2019-06-13 15:36:14 +02:00
< div id = "content" >
<!-- Generated by Doxygen 1.8.15 -->
< div id = "navrow1" class = "tabs" >
< ul class = "tablist" >
< li > < a href = "index.html" > < span > Main  Page< / span > < / a > < / li >
< li > < a href = "namespaces.html" > < span > Namespaces< / span > < / a > < / li >
< li class = "current" > < a href = "annotated.html" > < span > Classes< / span > < / a > < / li >
2019-07-15 17:42:24 -07:00
< li > < a href = "files.html" > < span > Files< / span > < / a > < / li >
2019-06-13 15:36:14 +02:00
< / ul >
< / div >
2019-07-12 13:25:23 -07:00
< / div > <!-- top -->
< div id = "side-nav" class = "ui-resizable side-nav-resizable" >
< div id = "nav-tree" >
< div id = "nav-tree-contents" >
< div id = "nav-sync" class = "sync" > < / div >
< / div >
< / div >
< div id = "splitbar" style = "-moz-user-select:none;"
class="ui-resizable-handle">
2019-06-13 15:36:14 +02:00
< / div >
< / div >
2019-07-12 13:25:23 -07:00
< script type = "text/javascript" >
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3& dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('classoperations__research_1_1SolutionPool.html','');});
/* @license-end */
< / script >
< div id = "doc-content" >
2019-06-13 15:36:14 +02:00
< div class = "header" >
< div class = "summary" >
< a href = "#pub-methods" > Public Member Functions< / a > |
< a href = "classoperations__research_1_1SolutionPool-members.html" > List of all members< / a > < / div >
< div class = "headertitle" >
< div class = "title" > operations_research::SolutionPool Class Reference< span class = "mlabels" > < span class = "mlabel" > abstract< / span > < / span > < / div > < / div >
< / div > <!-- header -->
< div class = "contents" >
2019-07-12 13:25:23 -07:00
< a name = "details" id = "details" > < / a > < h2 class = "groupheader" > Detailed Description< / h2 >
< div class = "textblock" > < p > This class is used to manage a pool of solutions. < / p >
< p > It can transform a single point local search into a multipoint local search. < / p >
2019-06-13 15:36:14 +02:00
2019-07-12 13:25:23 -07:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solver_8h_source.html#l05273" > 5273< / a > of file < a class = "el" href = "constraint__solver_8h_source.html" > constraint_solver.h< / a > .< / p >
< / div > < table class = "memberdecls" >
2019-06-13 15:36:14 +02:00
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a name = "pub-methods" > < / a >
Public Member Functions< / h2 > < / td > < / tr >
< tr class = "memitem:a0c1b8aceb7d2732914ade32de14cfc41" > < td class = "memItemLeft" align = "right" valign = "top" >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1SolutionPool.html#a0c1b8aceb7d2732914ade32de14cfc41" > SolutionPool< / a > ()< / td > < / tr >
< tr class = "separator:a0c1b8aceb7d2732914ade32de14cfc41" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:acfd2afc60305bddd7927b7f406dce492" > < td class = "memItemLeft" align = "right" valign = "top" >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1SolutionPool.html#acfd2afc60305bddd7927b7f406dce492" > ~SolutionPool< / a > () override< / td > < / tr >
< tr class = "separator:acfd2afc60305bddd7927b7f406dce492" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a9fb836da69e3c48b8ea240c0aee64d61" > < td class = "memItemLeft" align = "right" valign = "top" > virtual void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1SolutionPool.html#a9fb836da69e3c48b8ea240c0aee64d61" > Initialize< / a > (< a class = "el" href = "classoperations__research_1_1Assignment.html" > Assignment< / a > *const assignment)=0< / td > < / tr >
< tr class = "memdesc:a9fb836da69e3c48b8ea240c0aee64d61" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > This method is called to initialize the solution pool with the assignment from the local search. < a href = "#a9fb836da69e3c48b8ea240c0aee64d61" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:a9fb836da69e3c48b8ea240c0aee64d61" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a2e49e36a6c729756e59287fb8a3a3bcd" > < td class = "memItemLeft" align = "right" valign = "top" > virtual void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1SolutionPool.html#a2e49e36a6c729756e59287fb8a3a3bcd" > RegisterNewSolution< / a > (< a class = "el" href = "classoperations__research_1_1Assignment.html" > Assignment< / a > *const assignment)=0< / td > < / tr >
< tr class = "memdesc:a2e49e36a6c729756e59287fb8a3a3bcd" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > This method is called when a new solution has been accepted by the local search. < a href = "#a2e49e36a6c729756e59287fb8a3a3bcd" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:a2e49e36a6c729756e59287fb8a3a3bcd" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a695368c209531f7ae73419543a3d63cd" > < td class = "memItemLeft" align = "right" valign = "top" > virtual void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1SolutionPool.html#a695368c209531f7ae73419543a3d63cd" > GetNextSolution< / a > (< a class = "el" href = "classoperations__research_1_1Assignment.html" > Assignment< / a > *const assignment)=0< / td > < / tr >
< tr class = "memdesc:a695368c209531f7ae73419543a3d63cd" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > This method is called when the local search starts a new neighborhood to initialize the default assignment. < a href = "#a695368c209531f7ae73419543a3d63cd" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:a695368c209531f7ae73419543a3d63cd" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ab71086e9d6cbca14023cd54a03bd1eff" > < td class = "memItemLeft" align = "right" valign = "top" > virtual bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1SolutionPool.html#ab71086e9d6cbca14023cd54a03bd1eff" > SyncNeeded< / a > (< a class = "el" href = "classoperations__research_1_1Assignment.html" > Assignment< / a > *const local_assignment)=0< / td > < / tr >
< tr class = "memdesc:ab71086e9d6cbca14023cd54a03bd1eff" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > This method checks if the local solution needs to be updated with an external one. < a href = "#ab71086e9d6cbca14023cd54a03bd1eff" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:ab71086e9d6cbca14023cd54a03bd1eff" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:afb3b013c5063d71566d5273793c1d828" > < td class = "memItemLeft" align = "right" valign = "top" > virtual std::string  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1BaseObject.html#afb3b013c5063d71566d5273793c1d828" > DebugString< / a > () const< / td > < / tr >
< tr class = "separator:afb3b013c5063d71566d5273793c1d828" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< / table >
2019-07-12 13:25:23 -07:00
< h2 class = "groupheader" > Constructor & Destructor Documentation< / h2 >
2019-06-13 15:36:14 +02:00
< a id = "a0c1b8aceb7d2732914ade32de14cfc41" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a0c1b8aceb7d2732914ade32de14cfc41" > ◆ < / a > < / span > SolutionPool()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > operations_research::SolutionPool::SolutionPool < / td >
< td > (< / td >
< td class = "paramname" > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > inline< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2019-07-05 00:25:55 +02:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solver_8h_source.html#l05275" > 5275< / a > of file < a class = "el" href = "constraint__solver_8h_source.html" > constraint_solver.h< / a > .< / p >
2019-06-13 15:36:14 +02:00
< / div >
< / div >
< a id = "acfd2afc60305bddd7927b7f406dce492" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#acfd2afc60305bddd7927b7f406dce492" > ◆ < / a > < / span > ~SolutionPool()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > operations_research::SolutionPool::~SolutionPool < / td >
< td > (< / td >
< td class = "paramname" > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > inline< / span > < span class = "mlabel" > override< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2019-07-05 00:25:55 +02:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solver_8h_source.html#l05276" > 5276< / a > of file < a class = "el" href = "constraint__solver_8h_source.html" > constraint_solver.h< / a > .< / p >
2019-06-13 15:36:14 +02:00
< / div >
< / div >
< h2 class = "groupheader" > Member Function Documentation< / h2 >
< a id = "afb3b013c5063d71566d5273793c1d828" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#afb3b013c5063d71566d5273793c1d828" > ◆ < / a > < / span > DebugString()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > virtual std::string operations_research::BaseObject::DebugString < / td >
< td > (< / td >
< td class = "paramname" > < / td > < td > )< / td >
< td > const< / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > inline< / span > < span class = "mlabel" > virtual< / span > < span class = "mlabel" > inherited< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2019-07-12 13:13:30 -07:00
< p > Reimplemented in < a class = "el" href = "classoperations__research_1_1Pack.html#a494cf6256ff568544390e507a6943112" > operations_research::Pack< / a > , < a class = "el" href = "classoperations__research_1_1Assignment.html#a709bad20694c9c117a3abfff24a60d03" > operations_research::Assignment< / a > , < a class = "el" href = "classoperations__research_1_1SequenceVar.html#af92814129c466409ff4c004002c2034d" > operations_research::SequenceVar< / a > , < a class = "el" href = "classoperations__research_1_1RegularLimit.html#a7a6e185350eade19733138b3d054bba9" > operations_research::RegularLimit< / a > , < a class = "el" href = "classoperations__research_1_1SearchLimit.html#a1e65e704ea5249bc9c346b46449ff1ba" > operations_research::SearchLimit< / a > , < a class = "el" href = "classoperations__research_1_1OptimizeVar.html#ae2a7ca2a1d7ffb879e2d7794aa3875dc" > operations_research::OptimizeVar< / a > , < a class = "el" href = "classoperations__research_1_1SolutionCollector.html#a13b2487c422d35cd36e9bfbc2810c652" > operations_research::SolutionCollector< / a > , < a class = "el" href = "classoperations__research_1_1IntVarIterator.html#afcbc1c1ac6f9230d7037807d3dbd46dc" > operations_research::IntVarIterator< / a > , < a class = "el" href = "classoperations__research_1_1Constraint.html#a443bf6da3f8db15c240cb92d20e37466" > operations_research::Constraint< / a > , < a class = "el" href = "classoperations__research_1_1CPFeasibilityFilter.html#a39c6c9bb0a7cdaa452daa56e740f10b4" > operations_research::CPFeasibilityFilter< / a > , < a class = "el" href = "classoperations__research_1_1Demon.html#a906a1bd16d33b9b841e68b2a06bbbfd2" > operations_research::Demon< / a > , < a class = "el" href = "classoperations__research_1_1DecisionBuilder.html#aca201d99227a6116c62418d28761aa9b" > operations_research::DecisionBuilder< / a > , < a class = "el" href = "classoperations__research_1_1Decision.html#a8c30db3cf86cc406442a05f5361fe4b9" > operations_research::Decision< / a > , < a class = "el" href = "classoperations__research_1_1ChristofidesFilteredDecisionBuilder.html#adfc28bc18d4fbc481c51c92b44d12739" > operations_research::ChristofidesFilteredDecisionBuilder< / a > , < a class = "el" href = "classoperations__research_1_1ParallelSavingsFilteredDecisionBuilder.html#ad81f687a2b8b7f06fbe387c2a9159163" > operations_research::ParallelSavingsFilteredDecisionBuilder< / a > , < a class = "el" href = "classoperations__research_1_1PropagationBaseObject.html#ae5b6f8cb73c1b76da152ad612f91c4ce" > operations_research::PropagationBaseObject< / a > , < a class = "el" href = "classoperations__research_1_1SequentialSavingsFilteredDecisionBuilder.html#a03eb36c220aacf9dc6eaa439a242b76c" > operations_research::SequentialSavingsFilteredDecisionBuilder< / a > , < a class = "el" href = "classoperations__research_1_1ComparatorCheapestAdditionFilteredDecisionBuilder.html#a1ee5ca24459065ac257b5e4b7a48778e" > operations_research::ComparatorCheapestAdditionFilteredDecisionBuilder< / a > , < a class = "el" href = "classoperations__research_1_1EvaluatorCheapestAdditionFilteredDecisionBuilder.html#aff3956d65c1486c9bdab3fd850dbb5a6" > operations_research::EvaluatorCheapestAdditionFilteredDecisionBuilder< / a > , < a class = "el" href = "classoperations__research_1_1LocalCheapestInsertionFilteredDecisionBuilder.html#af623caea58c368f9b6bd5c3c7cca4e01" > operations_research::LocalCheapestInsertionFilteredDecisionBuilder< / a > , < a class = "el" href = "classoperations__research_1_1GlobalCheapestInsertionFilteredDecisionBuilder.html#a396d1d7fcc6b3b71cdb07105867b83cf" > operations_research::GlobalCheapestInsertionFilteredDecisionBuilder< / a > , < a class = "el" href = "classoperations__research_1_1ArrayWithOffset.html#ae3389cbd1f1f47c3c0ba0d8c9d98c8d2" > operations_research::ArrayWithOffset< T > < / a > , < a class = "el" href = "classoperations__research_1_1SearchLog.html#ae853a2dfed7755b376ccbee1c534682f" > operations_research::SearchLog< / a > , < a class = "el" href = "classoperations__research_1_1BooleanVar.html#acad14290f1f14a53adc0feb170d67f22" > operations_research::BooleanVar< / a > , < a class = "el" href = "classoperations__research_1_1LocalSearchMonitor.html#ab47cdaf51e8a28905ab0967a65138adc" > operations_research::LocalSearchMonitor< / a > , < a class = "el" href = "classoperations__research_1_1PropagationMonitor.html#a303fb6b35a71fdbcba21088
2019-06-13 15:36:14 +02:00
2019-07-05 00:25:55 +02:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solver_8h_source.html#l03093" > 3093< / a > of file < a class = "el" href = "constraint__solver_8h_source.html" > constraint_solver.h< / a > .< / p >
2019-06-13 15:36:14 +02:00
< / div >
< / div >
< a id = "a695368c209531f7ae73419543a3d63cd" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a695368c209531f7ae73419543a3d63cd" > ◆ < / a > < / span > GetNextSolution()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > virtual void operations_research::SolutionPool::GetNextSolution < / td >
< td > (< / td >
< td class = "paramtype" > < a class = "el" href = "classoperations__research_1_1Assignment.html" > Assignment< / a > *const  < / td >
< td class = "paramname" > < em > assignment< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > pure virtual< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > This method is called when the local search starts a new neighborhood to initialize the default assignment. < / p >
< / div >
< / div >
< a id = "a9fb836da69e3c48b8ea240c0aee64d61" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a9fb836da69e3c48b8ea240c0aee64d61" > ◆ < / a > < / span > Initialize()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > virtual void operations_research::SolutionPool::Initialize < / td >
< td > (< / td >
< td class = "paramtype" > < a class = "el" href = "classoperations__research_1_1Assignment.html" > Assignment< / a > *const  < / td >
< td class = "paramname" > < em > assignment< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > pure virtual< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > This method is called to initialize the solution pool with the assignment from the local search. < / p >
< / div >
< / div >
< a id = "a2e49e36a6c729756e59287fb8a3a3bcd" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a2e49e36a6c729756e59287fb8a3a3bcd" > ◆ < / a > < / span > RegisterNewSolution()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > virtual void operations_research::SolutionPool::RegisterNewSolution < / td >
< td > (< / td >
< td class = "paramtype" > < a class = "el" href = "classoperations__research_1_1Assignment.html" > Assignment< / a > *const  < / td >
< td class = "paramname" > < em > assignment< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > pure virtual< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > This method is called when a new solution has been accepted by the local search. < / p >
< / div >
< / div >
< a id = "ab71086e9d6cbca14023cd54a03bd1eff" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ab71086e9d6cbca14023cd54a03bd1eff" > ◆ < / a > < / span > SyncNeeded()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > virtual bool operations_research::SolutionPool::SyncNeeded < / td >
< td > (< / td >
< td class = "paramtype" > < a class = "el" href = "classoperations__research_1_1Assignment.html" > Assignment< / a > *const  < / td >
< td class = "paramname" > < em > local_assignment< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > pure virtual< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > This method checks if the local solution needs to be updated with an external one. < / p >
< / div >
< / div >
< hr / > The documentation for this class was generated from the following file:< ul >
< li > < a class = "el" href = "constraint__solver_8h_source.html" > constraint_solver.h< / a > < / li >
< / ul >
< / div > <!-- contents -->
2019-07-12 13:25:23 -07:00
< / div > <!-- doc - content -->
2019-06-13 15:36:14 +02:00
< / div >
< div id = "footer-container" >
< div id = "footer" >
< / div >
< / div >
< / body >
< / html >